gd文本和线条在Illustrator中以gif显示为灰色

时间:2010-09-23 14:03:06

标签: php image-processing gd gif

我在PHP中使用gd将一些文本添加到Illustrator中的gif图像中。我添加了文字和绘制的数字,无论我如何指定颜色,它们都显示为灰色(我猜是50%灰色)。

我在MS Paint中打开图像并将其重新保存为gif。当我这样做时,它发出了颜色损失的警告。但是,当我在新图像上使用gd添加内容时,颜色会正确显示。

这笔交易是什么?它是否与Illustrator在保存原始文件时使用的调色板有关?

我正在使用PHP版本5.2.6-1 + lenny9。这是gd信息:

GD Support  enabled 
GD Version  2.0 or higher 
FreeType Support    enabled
FreeType Linkage    with freetype
FreeType Version    2.3.7 
T1Lib Support   enabled 
GIF Read Support    enabled 
GIF Create Support  enabled 
JPG Support     enabled 
PNG Support     enabled 
WBMP Support    enabled

1 个答案:

答案 0 :(得分:1)

GIF是一种索引颜色格式 - 这意味着图像具有有限的颜色选择(最多256个,如果我没记错的话,使用GIF)。使用GD处理图像时,必须确保正确选择要复制内容,更改或其他内容的图像资源。例如,如果你做imagecreatetruecolor(...),那么这可能是问题 - 因为图像资源使用24(?)位真彩色,然后将索引颜色资源复制到其中......就像这样。

没有进行任何更深入的研究(从未有过这个特殊问题),我猜想使用透明的PNG代替GIF将是一个很好的解决方案。

e:此外,当从photoshop或插画工具中保​​存时,请始终使用“保存为网络”以避免浏览器出现其他一些奇怪的颜色问题。