缩小.png文件的大小

问题描述:

有很多程序声称减小文件的大小,但没有一个众所周知的程序optipng,pngcrush, pngquant允许我缩小到指定的大小。 pngcrush尝试了最艰难的,但结果仍然是我的需求大。对于.jpg文件,jpegoptim有一个-m选项,它允许我缩小到我需要的大小。显而易见的解决方案似乎是转换为jpg,缩小到合适的大小,然后转换回来,但这也不起作用,重新构建的.png文件只是跳回原始大小。缩小.png文件的大小

可能这与.png文件的结构有关。

是否有任何方式得到一个小的PNG文件? This png file是我需要缩小到1K字节以下的示例。

感谢您的任何建议!

+0

PNG是无损的,你只是不能假装压缩一个PNG图像pretedermined大小。 – leonbloy

我能想到的唯一解决方案是使用.jpg而不是.png.jpg格式主要是为其高损耗压缩而创建的,但仍能获得足够好的图像。另一方面,.png正在全面透明,没有质量损失。总而言之,.jpg非常适合在质量不重要的情况下缩小文件大小,.png非常适合质量和色彩真正重要的高质量图像。

来源: http://www.labnol.org/software/tutorials/jpeg-vs-png-image-quality-or-bandwidth/5385/http://www.interactivesearchmarketing.com/jpeg-png-proper-image-formatting/

+0

感谢大家的意见。不幸的是,我的问题是我需要一个非常小的.png文件作为fvwm的按钮图标。由于某些莫名其妙的原因,fvwm不会接受.jpg图像,但需要小图像!看起来我唯一的办法是尝试鼓励fvwm人们允许jpg图像。 –

+0

@LeoSimon如果您需要低于1k,那么您确实处于仅仅拥有一堆标题信息和可能无关的数据块的边界,这些数据块会大量消耗您的预算。正如大家所说,PNG不是为此设计的。也就是说,这个图像的图形相当简单,我怀疑图像本身可以很容易地通过使用纯色块,没有不必要的渐变,严格的或者没有抗锯齿等来“重新设计PNG”。我确定一个可视化的图像类似的可以在1K以下使用PNG。 –

我可以使用8位调色板PNG格式拿到9.5 KB文件下降到3.4 KB。图像有一个透明的边界,由于它是矩形的,因此它为不需要的整个图像添加不必要的像素和alpha通道。剥离透明边界后,消除alpha通道,并使用调色板,我可以将其降低到3.2 KB。

为了更进一步,我必须使用JPEG进行有损压缩。在非常低的图像质量5(100)中,我可以将其降低到1 KB。图中显示了严重压缩一些文物(看看周围的提示>和_看到一些人的):

icon

使用ImageMagick的减少颜色,然后pngcrush摆脱附属块:

magick in.png -colors 8 temp.png 
pngcrush -rem alla temp.png out.png 

产生1621字节的文件。如果您有ImageMagick的旧版本,请使用“convert”而不是“magick”。使用“-colors 4”而不是“-colors 8”可以获得一个1015字节的文件,但抖动看起来很斑点。

请注意,这些保留图像中的透明度,而转换为JPEG时会丢失透明度并使背景变为纯色。