用于创建PNG 8位透明图像的软件?
我正在根据本文寻找创建PNG8格式透明图像的软件。
注意:我本人需要Linux解决方案,但是请提交其他操作系统的答案。
解决方案
我建议使用" GIMP",因为它可以在PNG8中输出并支持Linux / Windows。如果我们需要仅Windows的快速解决方案,我也建议我们使用IrfanView。
我们提供的链接引用了Image Magick,这是一个用于在Linux上处理图像的出色工具包。
pngquant可以很好地转换为PNG8,同时保持完全透明。
如果我们对尺寸敏感,则可能还对pngcrush感兴趣,它通常可以(无损)压缩PNG相当多。
嗯,如果我没记错的话,几个月前阅读这篇文章时,pngquant还没有Windows版本。我看到它现在有一个。所以我尝试了,也尝试了pngnq。
后者似乎在IceAlpha.png测试图像(来自libpng.org)上做得更好,但代价是图像更大(可以使用pngcrush或者pngout进行后处理)。
抖动算法(pngquant的两个,pngnq的唯一一个)是不同的,可能值得同时使用这两种工具,并使用所有算法转换图像并查看最佳外观。
作为记录,在Windows端,IrfanView(4.10)很好地显示了这些图像(使用每个调色板条目上的透明级别),而XnView(1.85.1)和Gimp(2.4)仅应用了完整的透明/不透明显示,例如Gif:在链接的文章中作为示例给出的灯泡具有透明的背景,但是橙色部分是完全不透明的。
出色的实用程序TweakPNG展示了我们有一个PLTE(调色板,222个条目)块和一个tRNS(调色板颜色的alpha值,222个条目)块。更重要的是,它允许编辑每个调色板条目,颜色和Alpha级别。可能是这种格式的一个有趣的补充工具。
关于IrfanView支持的注意事项:如果它能正确处理PNG8以获得透明性,那么它将不能处理PNG文件中的伽玛信息:在巨嘴鸟图像或者乒乓图像上,我必须应用2.4的伽玛才能获得类似(较浅)的颜色。
还要注意,IrfanView将32位PNG图像转换为256时做得很糟糕,只允许一种透明颜色,如果全色抖动了,这看起来很糟糕!
我看到GIMP手册指出:"他的PNG8格式像GIF一样,只使用一位来表示透明度;只能使用两种透明度级别,透明或者不透明。"
而ISO / W3C标准规定:
" tRNS块指定与调色板条目相关联的alpha值(对于索引彩色图像)或者单一透明颜色(对于灰度和真彩色图像)。" PNG规范。 1.2补充:"尽管简单的透明度不如完整的alpha通道那么优雅,但它需要的存储空间更少,并且足以应付许多常见情况。"
看起来,独特的透明颜色比完整的透明调色板更实用。至少浏览器能正确处理。
这取决于原始图像的外观。
如果图像已经包含256种或者更少的颜色(RGBA值),则只需要查看pngout(Windows)(Linux / BSD / Mac OS X端口),无论如何我们应该已经使用它来优化PNG。它无法量化图像,但可以将其保存为8位,包括alpha透明度。只需传入" / c3"(或者Linux等上的" -c3")颜色选项,以强制其将图像另存为PNG8.
- 就生成的图像质量而言,Adobe Fireworks可能是最佳选择。如果我们只需要转换几个图像,或者我们不介意依靠Fireworks进行批处理,它将可以完成工作。我确实发现,有时它会以某种方式限制调色板中的颜色数量,从而产生比所需质量更差的图像。我不知道这可能是CS4中已修复的CS3中的错误。如果我们不在Windows或者OS X上,那么这显然不是一个选择,为此购买Fireworks也不值得。
- 我知道的唯一替代方法是已经提到的pngquant和pngnq。我对pngnq的运气更好,但这可能仅取决于哪种量化策略最适合我们使用的文件。不幸的是,我注意到它们在透明度较低的情况下都不能很好地工作(例如,具有透明圆角的不透明图像)。
如果图像确实包含256种以上的颜色,则我们可以选择更多的颜色,但都不尽人意:
Microsoft Windows:Ultimate Paint(免费软件和共享软件
版本可用)。
两种版本都可以另存为8位透明PNG图像。
它还可以另存为4位PNG(16种颜色)。这削减了
文件大小是8位的一半。
输入格式包括BMP,GIF,ICO,JPG / JPEG和PNG。
Ultimate Paint Standard 2.88 LE的免费版本
直接从下载
http://www.ultimatepaint.com/up.zip(1.7 MB)。
我还需要一个Linux解决方案,并发现pngnq做得很好。它似乎是专门为创建带有alpha通道的8位png设计的。
段落数量不匹配