什么时候该做 avif 转 png
有两种情况,而且它们的差别足够大,值得分开说。
第一种是兼容性。AVIF 很新,当下的浏览器都读得了,但大部分桌面软件不行。如果某个设计工具、 资源管线或者上传框在拒你的文件,PNG 是这世上最保险的格式:基本不存在能处理图片却打不开 PNG 的软件。
第二种是编辑。AVIF 通常是有损的,作为工作格式很糟糕。每一次打开、改动、保存,编码器都会再跑 一遍,从画面上再咬掉一小口。PNG 是无损的,转完之后文件就停止劣化,编辑多少轮都还是那个样子。
为什么是 PNG 而不是 JPG
因为 AVIF 能带透明,JPG 不能。
如果你的图里有抠出来的主体、柔和的投影,或者悬空的抗锯齿边缘,转成 JPG 会把这些全都压到一个 不透明的底色上。PNG 会完整保留 alpha 通道,透明部分和 AVIF 里存的一模一样。
如果这张图就是一张规规矩矩的矩形照片、压根没有透明,那 JPG 才是更合理的目标,而且文件会小得多。
做好体积的心理准备
这是这里所有转换中涨幅最大的一档,常见 5 到 15 倍。300 KB 的 AVIF 转出 4 MB 的 PNG 完全正常。
原因是这两种格式的目标正好相反:AVIF 把它判断为人眼察觉不到的部分统统丢掉;PNG 精确描述每个 像素、什么都不丢。你是在用字节换精确度和兼容性——作为编辑母版这笔交易很划算,作为网页素材就 很不划算。
全部在本机运行
AVIF 解码器本来就在你的浏览器里。这个页面用它解码,把结果画到 canvas 上,再在同一个标签页里 写出 PNG,所以你的文件从头到尾都待在自己机器上。