是否可以以无损方式更多地压缩jpg和/或png图像?我找到了执行此操作的网站,但是我认为这些文件都是以相同的方式压缩的。
通过压缩,我的意思是它仍然是任何图像程序都可以读取的jpg或png文件,但是文件大小较小。
如果是的话,Java和C#中获得额外压缩的最佳方法是什么?
答案 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中,这是压缩速度和大小之间的权衡。