直到现在才使用PHP的gd图像库来调整大小,裁剪和灰度图像我正在努力寻找一种方法来模拟当在Photoshop中将彩色图层放在灰度图像上并选择“乘法”时会发生什么'来自图层效果菜单。或者,正如我的老印刷讲师所解释的那样,我需要制作双色调。
出于某种原因,我认为我所需要做的只是简单地将图像变为灰度,然后在顶部放置透明度值小于100%的彩色图层。一旦我这样做了,我就想知道为什么我以为我得到的东西除了褪色外还有其他东西。
然后搜索了gd库文档,我找到的只是IMG_EFFECT_OVERLAY
过滤器与imagelayereffect
一起使用,但结果是将我的灰度图像的白色保持为白色而不是将其变为红色。
之前我没有使用过ImageMagick(但这是我控制服务器的极少数情况之一,所以我可以根据需要安装它)并且,过去看了一下文档,我猜想像Photoshop的multiply
之类的东西将是它的默认过滤器之一。唉没有。
我疲惫的大脑正在努力理解Photoshop的multiply
实际上是逐像素地做什么,所以我不知道ImageMagick系列(或者如果可能的话,gd的)更基本的过滤器I可以用来得到我需要的结果。
最后期限迫在眉睫,谷歌拒绝退回任何有用的结果,因此我们将非常感激地收到任何帮助。
答案 0 :(得分:3)
我发现这是在imagemagick PHP中应用Multiply的最简单方法
$print = new Imagick("blank.jpg");
$printOverlayTexture = new Imagick("overlay.jpg");
$print->compositeImage($printOverlayTexture, Imagick::COMPOSITE_MULTIPLY, 0, 0);
答案 1 :(得分:2)
ImageMagick 有multiply operation。我不能说Photoshop的结果和质量有多接近(我真的不明白它的作用:),但一定要尝试一下。
答案 2 :(得分:1)
对于它的价值,这里有一系列方便的Dandy ImageMagick脚本。他们不是我的,但我经常发现自己在回顾他们