如何防止Imagick在图层中重叠透明PNG变形

时间:2017-03-27 19:08:39

标签: php imagemagick imagick

我正在使用从一个图像到另一个图像的简单变形。这是我最初的图片:

enter image description here

我使用imagick使用以下代码进行变形(插入帧):

$images = [

    "tentacle 10.png",
    "tentacle 23.png",

];

$imagick = new \Imagick();

foreach ($images as $image) {       
    $nextImage = new \Imagick($image);
    $imagick->addImage($nextImage);
}

$imagick->resetIterator();
$morphed = $imagick->morphImages(1);

最终结果如下:

enter image description here

如您所见,后面的帧与之前的帧重叠,但由于它们具有透明背景,因此也会出现背面图像。

当我将初始图像转换为.jpg时,丢失透明背景,它正常工作,不会重叠帧。这是结果:

enter image description here

如何使其适用于透明图像?

0 个答案:

没有答案