zoukankan      html  css  js  c++  java
  • 网站图片优化-解码JPEG

    首先,老大拿了两个网站工具的分析跟我说,让我分析一下我们网站的图片有没有什么方法优化。

    【网站分析工具】
    webpage test: http://www.webpagetest.org/
    谷歌pagespeed insights: https://developers.google.com/speed/pagespeed/insights/

    【图片格式与编码】

    我们网站png很少,主要是jpg。

    JPEG的编码规则见度娘 http://baike.baidu.com/view/7679.htm

    另一种更好的理解是借助Photoshop的3个编码选项 http://www.photoworld.com.cn/post/8614

    1. 基线(“标准”)
    2. 基线已优化
    3. 连续(3/4/5)

    总体上讲就是基线编码和连续编码。基线编码可做无损的哈夫曼编码优化。连续编码就是传说中的渐进式图片,这种需要浏览器支持JPEG2000。

    【我们讲的是无损压缩】

    JPEG是有损压缩格式,压缩图片大小的代价是失真。然而也还是有无损压缩的部分,比如刚才说的哈夫曼编码优化。

    然而我们的图片已经是优化过的,为什么谷歌还提示能进一步压缩?

    通过分析谷歌优化前优化后图片的元数据发现,JPEG图片中其实保存着EXIF即相机信息和编辑器信息。但这不是大头,只有24字节。

    最天杀的元数据大约有900字节的信息是个叫XMP的东西。。。大概就是PS的编辑信息。所以谷歌所说的优化,就是移除图片的元信息。

    【图片压缩工具】

    分析过程中用到的工具:

    JPEGsnoop 在windows下使用,用于分析图片的元信息和编码情况
    jpegtran 谷歌推荐的压缩工具,在linux下压缩图片、移除元信息
    coobird.thumbnailator java中的图片压缩工具,底层实现是调用java的ImageIO
    Photoshop Adobe的知名的图片编辑图片转换工具

    最后的结论是。。。PS就能解决的问题,搞那么复杂作甚。。。哈哈~

  • 相关阅读:
    elastic-job-console
    CentOS7_安装mysql5.7
    CentOS7_开放指定端口
    CentOS7_防火墙
    Docker-CentOS7-安装
    MySQL_写锁_lock tables tableName write
    cesium 动态流动纹理
    cesium加载二维贴地的地名(本地地名数据)
    python3.6安装open AI gym环境(windows)
    python PIL打开较大的tif影像时出错-OSError: cannot identify image file Image.open
  • 原文地址:https://www.cnblogs.com/syjkfind/p/5281535.html
Copyright © 2011-2022 走看看