0
我有一个PNG透明背景。前景是单一的颜色。我想在保留100%alpha背景的同时更改此单一颜色。替换图像颜色并保持100%alpha背景
下面的代码不起作用,它有效时,我有一个gif。但是,当我将gif更改为png时,添加了阿尔法填充颜色变化。
如果我加imagetruecolortopalette($im, false, 255);
颜色会改变,但alpha会丢失。
有人能告诉我在哪里,我错了请
$imgname = "block.png";
$im = imagecreatefrompng($imgname);
imagealphablending($im, false);
$index = imagecolorclosest ($im, 153,153,153); // get Grey COlor
imagecolorset($im,$index,0,0,0); // SET NEW COLOR
imageAlphaBlending($im, true);
imageSaveAlpha($im, true);
$imgname = "result.png";
imagepng($im, $imgname); // save image as gif
imagedestroy($im);
编辑::这是一个很简单的脚本。
当我使用gif时,颜色改变,新图像被保存。当更改为.png时。颜色不再改变,因此原始图像不变地通过脚本。
定义“不起作用”和“它坏了”。 – 2011-04-12 09:37:01
我已更新问题 – 2011-04-12 09:43:11
将“分解”定义为“停止工作”没有用。 :) – 2011-04-12 09:45:11