---
title:"《JPEG XL 进 Chrome:被删掉的功能,又长回来了》"date:2026.10.08category:[编程, 行业观察]tags:[jpeg-xl, chrome, image-format, rust, web-performance, hacker-news]status:published
---

《JPEG XL 进 Chrome:被删掉的功能,又长回来了》

Chrome 155 开始支持 JPEG XL 解码。访谈聊 Chrome 当年为何移除又为何复活、Rust 重写解码器的安全账、AVIF 与 JXL 的路线之争,以及 HN 评论区里的阴谋论与真相。

2026.10.08·4 min read·6.7KB
// tl;dr: generating summary...

《JPEG XL 进 Chrome:被删掉的功能,又长回来了》

这周 Chrome 开发者博客扔出一颗小炸弹:从 Chrome 155 开始,浏览器正式支持 JPEG XL(.jxl)解码。比 JPEG 省 30%–50% 体积,支持无损、HDR,还能把老 JPEG 无损转码。听起来像常规更新,但 HN 评论区 320 条讨论吵的根本不是技术参数——而是三年前 Chrome 亲手把 JPEG XL 支持删掉,如今又亲手加回来。我请来林砚——前浏览器内核工程师,现在给大厂做前端性能咨询,图片格式的每一场战争他都在现场。我们聊了聊这次"复活"、Rust 重写解码器的安全账,以及格式战争里永远的 xkcd 927。

本文由每日自动管线生成:选题与素材来自 Hacker News 公开讨论,访谈内容由 AI 基于原文整理,嘉宾为角色设定,观点不代表任何真实人物。

小听: 砚哥,先给没跟的人补个背景:JPEG XL 到底是个啥,为什么值得 Chrome 专门发一篇博客宣布?

林砚: 一句话:它是 JPEG 的精神续作,但野心大得多。JPEG 管了互联网三十年,毛病大家都熟——有损压缩糊、HDR 不支持、渐进式加载体验差。JPEG XL 想一次全收:比 JPEG 省 30% 到 50% 体积,还支持无损压缩、HDR,最妙的是能把已有的 JPEG 文件无损转码成 JXL,一字节信息都不丢。Chrome 博客还给了句实在建议:AVIF 和 JPEG XL 都试试,哪个小用哪个。

小听: 但评论区最高赞的梗是 xkcd 927——"我们需要 14 种互相竞争的标准"。大家第一反应不是欢呼,是"又来一个格式"。

林砚: 这个梗每次格式新闻必到,比闹钟还准时。但这次评论区有个反驳很到位:JPEG XL 不是来添乱的,它是来终结乱局的。你看它想替换的清单:JPEG、PNG、WebP、GIF 动图、甚至 HEIC——一个格式打一群。有人算过账:光"无损 JPEG 转码"这一条,就能让全网存量图片无痛瘦身,这诱惑太大了。

小听: 真正的火药味在第二层:Chrome 在 110 版本删掉过 JPEG XL 支持,三年后又加回来。评论区直接开成了"Google 宫斗剧":有人说 Google 当年为了保亲儿子 WebP 故意打压,有人说这次是某个工程师为晋升立项,还有人说 Adobe 把 JXL 写进 PDF 规范、苹果在 iPhone 上原生支持,Google 是被架上去的。

林砚: 宫斗剧好看,但真相通常没那么戏剧。官方博客其实给了线索:这次的解码器是用 Rust 从零重写的 jxl-rs。当年删掉的直接原因是安全——C++ 写的 libjxl 爆出过一堆内存安全漏洞,解码器又是浏览器里最危险的攻击面之一,处理的是网上拉下来的不可信二进制。Google 的选择是:要么长期背安全债,要么先砍掉。三年后 Rust 版成熟了,账算得过来了,才加回来。

一条黑暗走廊尽头,一扇沉重的铁门先合上又重新推开,光从门缝涌入

删掉的功能,也能长回来——只要账算得过来。

小听: 评论区有人不买账:"Google 需要靠 Rust 才能写出安全的代码?"这话听着像嘲讽。

林砚: 底下立刻有人回:这难道是坏事吗?我站后者。图片解码器的历史上,越界读、堆溢出、use-after-free 就没断过,WebP 那次著名的 0day 就是例子。Chrome 这次的做法很彻底:SIMD 这种性能命脉,以前在 Rust 里必须写 unsafe 才能用,他们等到 target_feature_11 稳定、做了 jxl_simd 抽象层,把 unsafe 压缩到极少数高审查位置。博客里还秀了肌肉:模糊测试加 AI 代码评审,整个实现历史里零内存安全 bug。这不是"不会写 C++",这是"不想再为 C++ 还债"。

小听: 性能党在评论区吵的是另一场:AVIF 和 JPEG XL 到底谁强?有人说 AVIF 在极低码率无敌,有人实测会议论文缩略图 JXL 吊打 AVIF。

林砚: 这场我劝大伙别站队,因为连 Chrome 官方都不站队——原话是"两个都试试"。规律大概是:极低码率、能省则省的场景 AVIF 占优;高保真、无损、要精细渐进式加载的场景 JXL 占优。评论区有个工程师说得实在:选格式不是选信仰,是选 workload。对中文开发者更实际的提醒是:别急着全站切 JXL,先看你的 CDN、构建工具链认不认 .jxl。

小听: 还有个很现实的吐槽:每出一个新格式就多一场兼容性灾难。有人举例 Telegram 至今把 WebP 当贴纸处理,学生往学校系统传 WebP 传不上去,Windows 上打开 HEIC 一脸懵。

林砚: 这是所有新格式的成人礼,谁都躲不掉。但这次有个变量不一样:Safari 和 iOS 在 2023 年就原生支持了 JPEG XL,iPhone 16 开始能直接存 JXL 照片,Firefox 也在路上。当年 WebP 是 Google 一家推,推了十年才勉强普及;JXL 是苹果、Adobe、Mozilla、Google 四家接力。评论区那句"JXL is here to stay"我基本同意——不是因为它技术最完美,是因为生态第一次站到了同一边。

小听: 最后一个问题,替读者问个实在的:今天,一个普通前端到底该不该用 JPEG XL?

林砚: 三步走:第一,构建管线里加个 JXL 输出当备选,<picture> 标签做回退,零风险;第二,摄影类、设计稿导出类高保真图片优先试 JXL,省的体积最实在;第三,别删 AVIF/WebP 的管线,未来两三年是"三格式并存"。格式战争从没有一夜结束的,但这次,普通人第一次可以安心上车——因为连 Chrome 都回心转意了。

小听: 总结一下今天的访谈:JPEG XL 进 Chrome 155,省体积、支持无损和 HDR;三年前被删是安全账算不过来,这次靠 Rust 重写把账算平了;AVIF 和 JXL 按场景选,不必站队;生态四家接力,这次可能是真终局。原始讨论和原文见参考链接。

参考链接

// related: searching nearest posts...
# comments