我正在尝试将以下 ImageMagick 命令转换为 Magick++:
convert input-1.jpg input-2.jpg -compose blend -define compose:args="25,75" -composite result.jpg
我在使用 -define compose:args="25,75"
时遇到困难,我在 Magick++ 中找不到其等效项。如果没有 compose:args=
部分,Magick++ 代码如下:
Magick::Image input1, input2;
input1.read("input-1.jpg");
input2.read("input-2.jpg");
input1.composite(input2, 0,0, BlendCompositeOp);
任何人都可以向我解释一下 compose:args
部分,或者更好地告诉我它的 Magick++ 等效项吗?
最佳答案
您需要在入站合成图像上定义图像artifact
。
#include <iostream>
#include <Magick++.h>
using namespace Magick;
int main(int argc, const char * argv[]) {
InitializeMagick(argv[0]);
Image alpha, beta;
alpha.read("wizard:");
beta.read("logo:");
// -define compose:args="25,75"
beta.artifact("compose:args", "25,74");
alpha.composite(beta, 0, 0, BlendCompositeOp);
alpha.write("/tmp/out.jpg");
return 0;
}
关于c++ - ImageMagick 撰写 :args ="" to Magick++ API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34305995/