PHP中的Imagemagick命令行

时间:2011-01-17 03:11:43

标签: php imagemagick

我在命令行中为imagemagick提供了以下两个命令:

convert in.png container-mask.png +matte -compose CopyOpacity -composite  out.png
composite container.png  out.png -compose multiply final.png

这两个命令包括3个文件:

  • in.png :应该屏蔽的文件
  • container-mask.png container.png 区域的背面/白色遮罩,其中 in.png 应该可见< / LI>
  • container.png 图片,其中包含 in.png 的容器,已用黑色/白色屏蔽的容器 container-mask.png < / I>

现在的问题是如何将这些命令转换为PHP调用。我玩了很多,但我无法理解http://php.net/manual/en/book.imagick.php

上的API

谢谢和祝福, 查理

1 个答案:

答案 0 :(得分:3)

我找到了答案。嗯,毕竟这并不太复杂:

$original = new Imagick("in.png");
$mask = new Imagick("container-mask.png");
$container = new Imagick("container.png");

$mask->setImageMatte(0);
$original->compositeImage($mask, Imagick::COMPOSITE_COPYOPACITY, 0, 0);
$container->compositeImage($original, Imagick::COMPOSITE_MULTIPLY, 0,0);
$container->setImageFormat( "png" );
echo $container;