Gmagick有像Imagick :: thresholdImage这样的方法吗?

时间:2012-04-16 22:09:43

标签: php imagick gmagick

我正在尝试使用PHP的pecl模块Gmagick创建一个脚本,以从图像中删除一些白色背景。在命令行中,我使用以下两个命令进行imagemagick:

convert source.jpg \( +clone -fx 'p{0,0}' \) \
        -compose Difference -composite  \
        -modulate 100,0 -alpha off -threshold 10% source_mask.png

convert source.jpg source_mask.png \
        -alpha Off -compose CopyOpacity -composite \
        source_transparent.png

我已经能够采取前几个步骤:

$source_gm = new Gmagick();
$source_gm->readImage($source_path);

$white_gm = new Gmagick();
$white_gm->newImage($source_gm->getImageWidth(), $source_gm->getImageHeight(), 'white', 'png');

$mask_image = $source_gm->compositeImage($white_gm, Gmagick::COMPOSITE_DIFFERENCE, 0, 0);
$mask_image->modulateImage(100, 0, 0);

Gmagick模块具有某种常量,应该用于阈值Gmagick::COMPOSITE_THRESHOLD。但是,没有提示如何使用它。有人能帮助我达到门槛吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

我发现在gmagick中还没有使用thresholdImage函数。该功能已implemented in SVN,但尚未发布。