【发布时间】:2011-05-12 19:09:06
【问题描述】:
ImageMagick 创建一些非常大的 PNG。 GraphicsMagick 好多了,但我仍在寻找与 convert 一起使用以获得最小文件大小的 png 的最佳选项。
我这里有一个large png with a small filesize,通过 IM convert 传递它我无法达到那个文件大小,更不用说让它变小了。使用 GM convert,我可以将其缩小一些,但我正在寻找改进,通常是针对我遇到的任何图像。
gm convert -quality 95 a_png.png gm.png
convert -quality 95 -depth 8 a_png.png im.png
gm identify *
a_png.png PNG 2560x2048+0+0 PseudoClass 256c 8-bit 60.1K 0.000u 0:01
gm.png[1] PNG 2560x2048+0+0 PseudoClass 256c 8-bit 60.0K 0.000u 0:01
im.png[2] PNG 2560x2048+0+0 DirectClass 8-bit 130.2K 0.000u 0:01
哪些转换选项可以生成最小的 PNG 文件?
(是的,我对 OptiPNG、PNGOUT 和 Pngcrush 很熟悉。但我想要的东西可以毫无疑问地在我碰巧使用的每个 *nix 盒子上都可用。)
【问题讨论】:
-
将其转换为 1x1 PNG8 的那些。
-
当你可以在机器上执行脚本时,你也可以在上面放文件,对吧?静态链接 pngcrush 并将其放在您正在使用的 *nix 盒子上怎么样?
-
@thejh,是的,我可以做到。然而,这在生产环境中通常是不可接受的。此外,IM/GM 可能是最常用的图形包。所以我确信这只是找到正确选择的问题......
-
Gimp 生成非常小的 png(通常比 PNGOUT 和 PNGCrush 更好)。但如果您需要高性能,这可能不是最佳解决方案,对吗?
-
是的,感谢您的建议,但是 Gimp 在无头服务器上编写/部署脚本有点困难。 :)
标签: compression png imagemagick graphicsmagick