我的英语不好。我道歉,让我们直接举一个简单的例子。
#include <Magick++.h>
int main(int argc, char *argv[])
{
Magick::InitializeMagick(NULL);
Magick::Image *img = new Magick::Image();
img->magick("RGBA");
img->size(Magick::Geometry(150, 150));
img->read("xc:transparent");
img->fillColor(Magick::Color(0x00,0x00,0x00,0xFF));
img->lineWidth(10);
img->strokeColor(Magick::Color(0xFF, 0xAF, 0x00, 0x00));
img->draw(Magick::DrawableCircle(75,75,75,10));
img->write("foo.png");
delete img;
return 0;
}
在这里,我尝试绘制一个橙色圆圈并将结果写入.png文件。如果您使用GIMP或其他图像编辑器打开.png,您可能会注意到圆圈的边框很难看,尤其是当您将其作为其他彩色图像上的图层打开时。边界逐渐不透明。它在透明度的位置使用黑色。显然它使用的是面具而不是alpha通道。我在这里错过了什么?我应该用什么方法打电话?谢谢。 :)