Magickwand C 改变图像颜色

Magickwand C change image color

我有一个名为 single_color 的图像方法。它改变图像的颜色。它在我以前的图像魔术版本上工作,但在升级我的版本后,它不工作了。

ImageMagick 版本

版本:ImageMagick 7.0.5-9 Q16 x86_64 2017-06-01

为了实现这一点,我这样做了。

这是我的代码。

#include <stdio.h>
#include <MagickWand/MagickWand.h>

int main(int argc, char const *argv[]) {

  MagickWand * wand;
  wand  = NewMagickWand();
  MagickReadImage(wand, "input.png");

  PixelWand * PW3, * PW4;

  PW3 = NewPixelWand();
  PW4 = NewPixelWand();

  PixelSetColor(PW3,"transparent");
  PixelSetColor(PW4,"#008080");
  MagickOpaquePaintImage(wand, PW3, PW4, 20.0*65535.0/100.0, MagickTrue);

  MagickWriteImage(wand, "single_color.png");
}

这是 ImageMagick 最新版本中的一个错误。我在他们的论坛上发布了这个。可能很快就会修复。

Check this.