2

我在使用 PHP GD 制作 alpha PNG 时遇到问题。我没有 imageMagik 等。

尽管图像在浏览器和 GFX 程序中加载得非常好,但我在 Flash AS3 (actionscript) 理解文件时遇到了问题。它抱怨是未知类型。但是,将这些文件从 Fireworks 导出到相同的规范可以正常工作。所以我建议 PHP GD 中的格式有问题。

似乎有很多方法可以做到这一点,有几个类似的功能;所以也许这不对?

$image_p = imagecreatetruecolor($width_orig, $height_orig);

$image = imagecreatefrompng($filename); 

imagealphablending($image_p, false);
ImageSaveAlpha($image_p, true);
ImageFill($image_p, 0, 0, IMG_COLOR_TRANSPARENT);
imagealphablending($image_p, true);

imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width_orig, $height_orig, $width_orig, $height_orig);

imagepng($image_p, "new2/".$filename, 0);

图像销毁($image_p);

这只是获取给定的文件并将它们放入具有指定宽度/高度的新文件中 - 对于此示例,它与原始文件相同,但在生产中它会调整大小,这就是我重新采样的原因。

4

1 回答 1

1

为了保持透明度,你应该做

imagealphablending($image_p, false);

而不是“真实”。也许这也可以解决格式问题。

于 2010-05-09T11:46:14.773 回答