ImageMagick撰写:args =""到Magick ++ API

zin*_*rod 1 c++ imagemagick image-processing magick++

我试图将以下ImageMagick命令转换为Magick ++:

convert input-1.jpg input-2.jpg -compose blend -define compose:args="25,75" -composite result.jpg
Run Code Online (Sandbox Code Playgroud)

我遇到了困难-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);
Run Code Online (Sandbox Code Playgroud)

任何人都可以compose:args向我解释这个部分或者更好地告诉我它的Magick ++等价物吗?

emc*_*lle 5

您需要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;
}
Run Code Online (Sandbox Code Playgroud)

撰写:使用Magick ++的args