在 Web 应用中处理 HEIC 上传 — 实际解决方案
发布: (2025年12月12日 GMT+8 10:29)
1 min read
原文: Dev.to
Source: Dev.to

概述
如果你的用户从 iPhone 上传照片,你肯定会遇到 HEIC 格式。
方案 A:在客户端解码 HEIC
使用像 libheif 这样的 WASM 解码器:
import HeifDecoder from "wasm-heif";
async function convertHEIC(file) {
const decoder = new HeifDecoder();
const image = await decoder.decode(file);
return image.toCanvas();
}
效果很好,但通常会导致捆绑包体积庞大。
方案 B:让用户在上传前自行转换
许多应用选择此方案以避免复杂性。
一种简单的做法是推荐一个易用的转换工具:
👉
这可以减少支持工单,并保持前端代码简洁。