Hugo 网站优化(5): 穷的还剩 8 分钱, 压缩图片,还能省省

简介: Hugo 网站优化(5): 穷的还剩 8 分钱, 压缩图片,还能省省

Hugo 网站优化(5): 穷的还剩 8 分钱, 看我怎么节约成本

大家好, 我是老麦
欢迎 订阅网站 https://tangx.in/
第一时间看后续精彩文章。觉得好的话,请猛击文章右下角「在看」,感谢支持。

我很穷, 穷的来只剩账户只有 8 分钱了。

所以我每天都在想怎么能继续降低成本, 毕竟我的 CDN 只有 10G 免费流量。

这次我狙击的目标是 图片。 由于 MacBook 的高分辨率, 截图的大小还真挺费流量的。 然后我用的截图工具并不支持 压缩并保存, 习惯了快捷键并不想换新的。

pngquant 压缩工具

天无绝人之路, 所幸在 google的 pagespeed tools 中提供了图片的优化建议 中找到了一个 pngquant 压缩工具。

经过测试, 图片默认参数压缩率在 50% - 70% 左右, 效果拔群。

image.png

可惜的是, 没有找到命令参数覆盖原文件。

图片引用

为了保证我的写作不被图片压缩打断, 也就是不需要单独去执行压缩操作, 同时也保留了原始图像的高分辨率。

我修改 Github Action图片地址渲染, 在编译过程中, 完成 压缩工作

  1. 压缩: 很简单, 执行简单命令即可
# 压缩
find ./ -type f -name "*.png" -not -name "*-fs8.png" |xargs pngquant -f
  1. 图片地址渲染: 在 render-image.html 中, 添加了图片是否为 .png 结尾判断, 如果是则替换为新后缀。

核心代码逻辑如下

<!-- render-image.html -->

    <!-- 4. 图片压缩后缀 -->
    {{ if $image_handler.compress_png_suffix }}
        {{ if not (hasPrefix $img_destination "http") }}
            {{ if (strings.HasSuffix $img_destination ".png") }}
                {{ $img_destination = (replace $img_destination ".png" $image_handler.compress_png_suffix) }}
            {{ end }}
        {{ end }}
    {{ end }}
  1. 当然, 为了可以自定义压缩图片的后缀, 我在 config.toml 配置文件中新增了控制变量。
# config.toml
[params.image_handler]
    # 是否替换为压缩图片
    compress_png_suffix = "-fs8.png"

运行后效果如下

image.png

效果很理想。

相关文章
|
4月前
|
缓存 前端开发 JavaScript
快如闪电!揭秘网页秒开秘籍,网友:再也不怕网速拖后腿!
【8月更文挑战第6天】随着互联网的发展,快速的网页加载成为关键。本文介绍前端性能优化策略,涵盖资源压缩与合并、图片优化、缓存利用、CDN部署、CSS及JavaScript的加载顺序优化、异步加载及DOM和CSS渲染减少等方面,旨在全面提升页面加载速度与用户体验。通过实施这些技术,可有效改善网站性能,满足用户需求并提升搜索引擎排名。
63 2
|
7月前
|
SQL 机器学习/深度学习 前端开发
10个宝藏级编程资源,让你省下8K学费不香吗_类似javaguide的前端网站
10个宝藏级编程资源,让你省下8K学费不香吗_类似javaguide的前端网站
10个宝藏级编程资源,让你省下8K学费不香吗_类似javaguide的前端网站
|
7月前
|
Python
【分享代码】国庆氛围不能少,快来给头像加个国旗
【分享代码】国庆氛围不能少,快来给头像加个国旗
89 0
|
存储 前端开发 JavaScript
你小子!过年了,写了一个拼图小游戏来拼掘金兔年礼盒,来玩玩不?
你小子!过年了,写了一个拼图小游戏来拼掘金兔年礼盒,来玩玩不?
207 2
|
数据格式
教你一招,瞬间制作无数个座位牌!
先作好心理准备,真的很简单,不要有心理负担,请跟着我的步骤动手操作起来。
283 0
|
开发者 异构计算 AI芯片
Colab搞了个大会员,每月50刀训练不掉线,10刀会员:我卑微了?
你以为你充了会员就无敌了?其实上面还有大会员、超级会员、至尊会员……
3181 0
Colab搞了个大会员,每月50刀训练不掉线,10刀会员:我卑微了?
|
小程序 Windows
电脑可以刷微信朋友圈,这下能更好地摸鱼了?
电脑可以刷微信朋友圈,这下能更好地摸鱼了?
|
SQL JavaScript Java
搭建情人节表白网站(超详细过程,包教包会)
网站的搭建其实在七夕的时候就已经弄好了,只是当时不会搭建,然后就放了好几个月,偶然发现情人节快到了,遂重新搭建了这个网站,不过说实话除了网站还真想不出有啥能够体现程序员的特长,你说各种代码,c,c++,java即时给你做出不错的GUI界面,人家还不一定会打开,网站最容易了,有手(机)就行,下面是它的效果展示视频,觉得好的记得三连哦
435 0
搭建情人节表白网站(超详细过程,包教包会)
【Day32】LeetCode刷刷刷。[1700. 无法吃午餐的学生数量 ]
学习LeetCode刷刷刷。[1700. 无法吃午餐的学生数量 ]。
197 0
【Day32】LeetCode刷刷刷。[1700. 无法吃午餐的学生数量 ]