我正在尝试通过使用以下代码更改色彩空间来将图像转换为黑白图像:
$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),并且没有注意到视觉差异。
作为替代方案,您可以尝试$im->modulateImage(100,0,100);
代替setImageColorspace()
希望这可以帮助!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)