更多压缩图像

时间:2018-10-02 22:18:32

标签: java .net png jpeg

是否可以以无损方式更多地压缩jpg和/或png图像?我找到了执行此操作的网站,但是我认为这些文件都是以相同的方式压缩的。

通过压缩,我的意思是它仍然是任何图像程序都可以读取的jpg或png文件,但是文件大小较小。

如果是的话,Java和C#中获得额外压缩的最佳方法是什么?

2 个答案:

答案 0 :(得分:0)

在不同的图像中,有几种压缩算法可以达到更好的压缩效果。当您将Java和C#与图像压缩混合使用时,我不确定您的问题想知道什么。

最近有足够多的Google开发人员发布了new format called WebP。他们声称,与PNG相比,这种格式可以提供26%的较小无损图像,而与JPEG相比,可以提供更好的无损图像,但是对WebP的支持仍然非常有限。

您所能做的就是利用图片HTML元素,并提供一个备用WebP并回退到PNG或JPEF文件。

这是一个示例:

<picture>
  <source srcset="img/awesomeWebPImage.webp" type="image/webp">
  <source srcset="img/creakyOldJPEG.jpg" type="image/jpeg"> 
  <img src="img/creakyOldJPEG.jpg" alt="Alt Text!">
</picture>

这是一篇有关使用WebP的好文章:https://css-tricks.com/using-webp-images/

答案 1 :(得分:0)

所有JPEG压缩本来就是有损的。 RGB→YCrCb转换通常需要修改值,因为颜色空间的色域是不同的。 JPEG压缩涉及四舍五入为整数的浮点值。

有许多JPEG设置可用于权衡尺寸损失。是否可以访问它们取决于您的编码器。

对于PNG,唯一的实际大小设置是编码器将在LZ窗口中搜索匹配项的距离。在PNG中,这是压缩速度和大小之间的权衡。