繁体   English   中英

IMG_FILTER_COLORIZE问题

[英]IMG_FILTER_COLORIZE problems

我已经在论坛上获得了一些很棒的建议,如何使用imagefilter IMG_FILTER_COLORIZE获取colorize函数。

问题是它无法按我希望的方式工作,下面的链接最清楚地说明了这一点: http : //expromo.pl/klienci/imagefilter/

我有一个包含某种形状的透明png。 我想要:

  • 更改形状的颜色,就像“ Photoshop图层设置/着色”一样
  • 保持透明度
  • 将其另存为另一个PNG文件

这是我的代码:

$im = imagecreatefrompng('image.png');
imagealphablending($im, false);

if($im && imagefilter($im, IMG_FILTER_COLORIZE, 0,0,255,0))
{
    imagepng($im, 'image-new.png');
    imagedestroy($im);
}

在上面的链接上: http : //expromo.pl/klienci/imagefilter/

第一张图片就是我所拥有的。 第二张图片是我得到的,第三张图片是我想要的。

预先非常感谢。

您必须添加imagesavealpha($im, true); 因此Alpha通道将保存在新图像上。

$im = imagecreatefrompng('image.png');
imagealphablending($im, false);

imagesavealpha($im, true);

if($im && imagefilter($im, IMG_FILTER_COLORIZE, 0,0,255,0)) {
    imagepng($im, 'image-new.png');
    imagedestroy($im);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM