PHP ImageMagick setColorspace无法正常工作

3

我正在尝试使用以下代码通过改变颜色空间将图像转换为黑白:

$im = new Imagick('image.png');
$im->setImageColorspace(Imagick::COLORSPACE_GRAY);
$im->writeImage('out.png');

但是在这段代码之后,图像并没有明显的变化 (out.png 和 image.png 看起来无法区分)。你对此有什么想法吗?这是将图片转换为黑白的正确方法吗?还有其他的方法吗?

我也尝试过使用 setColorspace(Imagick::COLORSPACE_GRAY); 但结果相同。

以下是我使用的软件:

ImageMagick 6.6.9-7
PHP 5.3.10-1ubuntu3.1
Server version: Apache/2.2.22 (Ubuntu)

编辑:一些额外的信息

我也尝试将其转换为其他颜色空间(特别是CMY和CMYK),但同样没有注意到任何视觉上的差异。


我也遇到了同样的问题。有帮助吗? - mmw5610
2个回答

3
作为替代方案,你可以尝试使用$im->modulateImage(100,0,100);代替setImageColorspace() 希望这能有所帮助!

哈!我发誓我之前试过这个,但它没起作用。出于一时兴起,我又试了一遍,结果非常成功。谢谢! - gregghz

2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接