使用Imagick在Compose Over期间添加灰度蒙版

时间:2019-01-04 01:06:35

标签: imagemagick imagick imagemagick-convert

我有以下脚本ImageMagick脚本

convert $tmpA4 \
    \( -clone 0 -negate \) \
    \( -size ${wd}x${ht} gradient: -negate \) \
    -compose over -composite \
    $tmpA4

我试图使用Imagick进行再生,但最终没有运气。请找到我尝试过的代码

    $negate = clone($tmpA4);
    $negate->negateImage(false);
    file_put_contents("negateR.png",$negate);


    $gradient = new Imagick();       
    $gradient->newPseudoImage(round($wd),round($ht), "gradient:white-black"); 
    $gradient->setImageFormat("png");
    $gradient->negateImage(false);
    file_put_contents("gradientR.png",$gradient);

    $negate->setImageAlphaChannel(imagick::ALPHACHANNEL_OPAQUE);
    $negate->compositeimage($gradient, Imagick::COMPOSITE_COPYOPACITY , 0, 0);

    $tmpA4->setImageCompose(imagick::COMPOSITE_OVER);
    $tmpA4->compositeimage($negate, Imagick::COMPOSITE_OVER, 0, 0);

negateR.png和gradientR.png完美地生成了,但是最终的合成却没有。

enter image description here

enter image description here

0 个答案:

没有答案