虎绿林支持HEIC/HEIF/AVIF图片了,但是第一次加载较慢
@无名啊,我已经转好一张了,就是这个。这应该是所有测试图片中最大的。
.\bpgenc.exe -q 17 8b380294-064e-4564-bc02-16783e3a69e1.png
8b380294-064e-4564-bc02-16783e3a69e1.HEIC(5.61 MB)
8b380294-064e-4564-bc02-16783e3a69e1.bpg(5.55 MB)
BPG的asm.js脚本直接内存不足退出了。
https://hu60.cn/q.php/bbs.topic.102481.1.html
@老虎会游泳,花了点时间,爬取了首页100个帖子内容,并将其中所有图片下载至本地,尝试转换成webp
(-q=75
)
数据如下:
头像图片(67个文件,共 1048 KB):
限定分辨率 | 转换后大小 | 流量消耗 | 存储占用 |
---|---|---|---|
不限定 | 364 KB | 34.82% | 135% |
帖子图片(230个文件,共 135 MB):
限定分辨率 | 转换后大小 | 流量消耗 | 存储占用 |
---|---|---|---|
1280x1280 | 12.37 MB | 9.13% | 109% |
1920x1920 | 15.90 MB | 11.73% | 112% |
2560x2560 | 18.88 MB | 13.93% | 114% |
不限定 | 30.25 MB | 22.32% | 122% |
结论:
用到的命令如下:
# 保存所有帖子内容
curl 'https://hu60.cn/q.php/index.index.json?pageSize=100' ... |
jq -r '.newTopicList[].id' |
while read -r id; do
curl "https://hu60.cn/q.php/bbs.topic.$id.json?_uinfo=avatar&_content=json&pageSize=1000" ... > "$id.json"
done
# 下载头像、帖子图片
jq -r '.tContents[]._u_avatar' *.json | sed 's/\?.*$//' | sort | uniq | wget -i - -nc -nv -P ./avatar/
jq -r '.tContents[].content[] | select(.type=="imgzh") | .src' *.json | wget -i - -nc -nv -P ./img/
# 转码
for q in 75; do
for size in 1280 1920 2560 10000; do
find . -type f | while read -r file; do
dir="../webp/$q/$size/${file%/*}"
mkdir -p "$dir"
convert "$file" -quality "$q" -resize "${size}x${size}>" -define webp:method=6 -define webp:thread-level=1 "$dir/${file##*/}.webp"
done
done
done
# 注:
# 1. 实际运行需要安装 curl, jq, imagemagick, webp, libheif, bpg 工具
# 2. curl 的 ... 包含 cookie 等各种敏感且非关键数据,所以省了
# 3. 注意各步骤所处的工作目录,懒得写明了
@无名啊,现在情况改变了,因为大部分图片都放在阿里云为unicloud提供的免费空间里。
https://uniapp.dcloud.io/uniCloud/price
@老虎会游泳,
BPG
和HEIC
类似,也是一种用了 x265 编码的图片格式。但是它的 js 解码速度好快啊,基本秒开页面老虎看看,能不能用到
HEIC
解码上呢