Discourse 新增客户端图像优化

将近 5 年前,我们推出了 客户端图像优化,使用户能够上传超过站点限制的图片,节省用户上传带宽,节省社区存储空间,并让 Discourse 中的图像体验整体更加流畅。

在此基础上,新的 即将推出的变更 为该系统引入了一些新功能:

GIF 转 动态 WEBP

将大型 GIF 转换为其他格式一直是我们 关注 已久的话题 之一,现在它们会被转换为动态 WebP,平均文件大小仅为原始文件的一半:

1ueX9IP
(2.5MB GIF → 1MB WEBP)

output
(10.1MB GIF → 4.8MB WEBP,按默认大小限制在 Discourse 中本不允许上传)

HEIC 转换

我们于 2020 年通过服务器端转换 添加了对 HEIC 的支持,现在我们还支持在编辑器中直接处理这些文件,让用户在提交帖子前就能看到转换结果。如果客户端转换因某种原因失败,服务器端转换仍会作为备用方案继续工作。


(3.4MB HEIC → 650KB JPG)

JXL 转换

虽然浏览器对 JXL 文件的支持尚未就绪,但现在用户可以将 JXL 文件上传到 Discourse,系统会自动将其转换为 JPG,确保每位用户都能看到该图像。


(1.1MB JXL → 930KB JPG)

38 个赞

很高兴看到针对效率的优化!但为何不更广泛地使用 WebP 呢?例如用于 JXL 和 HEIC 的转换,尤其是 PNG 的转换和压缩?我建议使用 AVIF,但据我所知,与 WebP 相比,它目前的普及度还远远不够。

带有透明度的 HEIC 和 JXL 已经被转换为 WebP 而非 JPG。我曾考虑始终使用 WebP,但这需要添加大量站点设置,以便管理员能够精细调整行为,这让我有些犹豫。

情况相同。

理想情况下,我希望能赋予管理员权限,通过设置来控制客户端和服务端两端的图像压缩,同时仍提供合理的默认值,甚至允许终端用户通过编辑器上传模态框中的选项,像 Telegram 和 WhatsApp 那样,在需要时选择退出压缩。但内部目前对此项工作并无兴趣。

6 个赞