# 手机存下的那张照片，和那个什么都打不开的格式

iPhone 把照片存成 HEIC，它比 JPEG 更小也更好，而大量软件至今拒绝打开它。这一页讲这个格式究竟是什么，转换要拿画质换多少，以及为什么几乎每一个转换器都要你先把照片传上去。

[打开HEIC 转 JPG](https://abox.tools/zh/heic-to-jpg/): iPhone 拍的照片，换成什么都打得开的格式。

最后更新 2026年10月4日

## 先说结论

打开 [HEIC 转 JPG](https://abox.tools/zh/heic-to-jpg/)，把照片丢进去，按“转换”。质量滑块别动，“保留日期、相机和参数”也保持勾着，除非你有理由不留。出来的就是 JPEG，一张一个下载按钮，多了就给你一个 zip。

整个过程什么都不上传。在这件事上这算少见，而为什么少见，正是这一页里有意思的那一半。

![选项卡片：格式菜单选在 JPEG，质量滑块在 85，还有一个开关决定是否保留原文件的日期、相机和位置。](https://abox.tools/screens/convert-heic-to-jpg/options.webp)

整个转换就这三项。值得停一停的是元数据那个开关，下面一节说明了原因。

## HEIC 到底是什么

HEIC 其实不算 JPEG 那种意义上的图片格式。它是个容器，跟 MP4 是同一套盒式结构，里面装着一帧 **HEVC** 视频。HEVC 也叫 H.265，就是接替你那台老摄像机那套编码的东西，而且相当能打：同样画质下，一张 HEIC 的 iPhone 照片大约只有 JPEG 的一半大。

苹果从 2017 年的 iOS 11 起换用它，并设成默认。也就是说，除非有人专门去设置里选过“最兼容”，否则这将近十年里那部手机拍的每一张照片，都在用一个这样的格式：

- Windows 不装商店里的扩展就预览不了；
- 多数网页上传表单直接拒收；
- 大量老一点的桌面软件压根没听说过；
- 除了 Safari，没有哪个浏览器显示得出来。

照片本身没毛病，它比同一张的 JPEG 还更好。只是它用的这门语言，世界上大部分地方没学过。

## 为什么只有 Safari 打得开

这一段能解释你用过的每一个转换器，所以值得单说。

解 HEVC 得有 HEVC 解码器，而 HEVC 是有专利的。授权由不止一个专利池管，随产品带一个解码器，就意味着得给人掏钱。浏览器的应付办法是靠操作系统，在硬件本来就有授权解码器的机器上，Chrome 能放 HEVC *视频*，但那条路是为视频播放接通的，不是为静态图片。所以把一个 HEIC 交给 `<img>`，Chrome、Firefox 和 Edge 一律拒收，什么操作系统上都一样。

苹果设备上的 Safari 是例外，因为 macOS 和 iOS 手里有解码器，而 Safari 被允许去问它要。除此之外的地方，这张图对浏览器来说就是解不开。

于是一个转换器只剩两条路可走，而在这两条路之间怎么选，就是这类工具的全部故事。

## 为什么几乎每个 HEIC 转换器都要你上传

第一条路：把解码器放在服务器上。照片传上去，在一台你从没见过的机器上解码，重编成 JPEG，再发回来。几乎每一个“免费在线 HEIC 转换器”都是这么干的，这也正是它们都要你文件的原因。这不是偷懒，浏览器确实没法赤手空拳干这活。

代价值得说得直白些。手机里的照片是多数人拥有的最私密的文件，而一张刚出 iPhone 的 HEIC，通常带着精确到几米的拍摄坐标，外加精确到秒的日期和一个相机标识。把一整个文件夹传给一个免费服务，等于把照片和这些一并交出去。之后会发生什么，取决于一份你没读过的隐私政策、一台你查不了的服务器，还有一个不是你挑的司法辖区。

第二条路：把解码器放在页面上。[这一个](https://abox.tools/zh/heic-to-jpg/)就是这么做的。它自带一份编译成 WebAssembly 的 `libheif`，由本站发出，大约 1.4 MB，下一次就有缓存。你的浏览器在你自己的机器上、用你自己的硬件跑它，照片哪儿都不去。页面开一次之后，你完全可以拔掉网线，它照干不误，而这是任何上传型转换器都做不到的，也是最省事的一条证明。

那 1.4 MB 就是全部代价。你要是在按流量计费的网络上，这确实是笔实实在在的开销，也值得知道，所以页面把它明说出来，而不是悄悄下下来。

## 转换要拿画面换多少

HEIC 和 JPEG 是两种编码，中间不存在一条不用把画面解开再编回去的路，而后面这一编是有损的。实际上这件事远没有听上去那么要紧：

- **质量 92**，也就是转换器的起点，在任何正常观看尺寸下，照片都非常难跟原图区分开。你要找的是平滑渐变里的差别，比如晴空，而通常你找不到。
- **JPEG 会更大。**一般大三分之一到一倍，因为 JPEG 是 1992 年的编码，而 HEVC 不是。这就是那笔交易：文件大一些，换什么都打得开。
- **该避的是转两遍。**每一次有损编码都要花掉一点。从原始的 HEIC 转，别从别人已经给你转好的 JPEG 转，而且只转一次。

一点损失都不想要的话，格式菜单里还有 PNG。做好心理准备：一张照片存成 PNG，通常是 JPEG 的五到十倍大，因为 PNG 那套压缩是为大片纯色和线稿设计的，不是为草地和皮肤。

## 日期、相机和坐标

大家抱怨 HEIC 转换器，抱怨得最多的就是照片转回来丢了拍摄日期，于是一整趟假期的照片全按今天的日期沉到相册最底下。这是因为，经由画布转换出来的只有像素，别的什么都没有，画布不带任何标签。所以除非转换器专门去把元数据另取一遍，否则它就是没了。

这里的工具会把 EXIF 块从 HEIC 里抄出来，写进 JPEG，日期因此保住。页面上有个勾选框，默认勾着。取消勾选，出来的 JPEG 里就只剩画面。

决定之前，先看看那份列表：每张照片那一行都写明文件里有没有 GPS 坐标，而且是在你转任何东西之前就写明。照片要发去公开场合，那一行就是该读的。照片只是进你自己的相册，那留着元数据几乎肯定才是你要的。

不管你怎么选，有一个标签一定会被改，而为什么改值得知道。HEIC 把旋转记在两个地方：容器里一份，EXIF 块里一份。解码器在解码时已经把容器那份旋转应用上了，所以交出来的像素本来就是正的。这时候 EXIF 要是还说“把这张转 90 度”，看图软件就会再转一次，每一张竖构图都得躺下。所以方向标签被设成正立，其余的一律按手机原来写的样子抄过去。

你要是想逐条细看那些标签，或者把已经是 JPEG 的照片里的标签清掉，那是另一件活，[另有一篇指南](https://abox.tools/zh/guides/remove-exif-and-gps-data/)。

## 容易踩的几个坑

- **名叫“.jpg”的 HEIC。**极其常见：中途有什么东西把它改了名，却没转格式，所以它照样打不开。丢进转换器的每个文件都按开头那几个字节判断，不看名字，所以这种文件照样能转。也正因如此，一个真的是 JPEG 的文件会被直接告知，而不是被转成一份自己的副本。
- **一个文件，好几张画面。**连拍或者 Live Photo 可以装不止一张静态图。装几张就转几张，多出来的按原文件名加编号。Live Photo 的视频那一半，是手机搁在 HEIC 旁边的另一个文件，不在这里面，也就无从转起。
- **AVIF.** AVIF 使用浏览器解码器，不加载 HEIC 引擎。输出仍为 JPEG、PNG 或 WebP。只输出第一张解码后的图片，颜色或 HDR 可能改变。AVIF 元数据一律不保留，元数据复选框仅适用于 HEIC。原文件保持不变。
- **从源头上把问题掐掉。**手机上：设置 → 相机 → 格式 → 最兼容。从此新拍的都是 JPEG。它更占存储空间，也不会动到你已有的照片，但从此不用再干这件事了。
- **分享有时候本来就转了。**把照片隔空投送或者用邮件发给非苹果设备，往往过去的就是 JPEG，因为 iOS 在发出时顺手转了。一张照片要是仍旧以 HEIC 的样子到了你手上，那说明它走的是没转的那条路。

## 怎么判断一个转换器是不是在上传

这套办法对任何工具都管用，不只这一个，花不了十五秒。

1. 打开页面，再打开浏览器的开发者工具，切到“网络”面板。
2. 转一张照片，盯着看。在你机器上解码的工具，那一刻一条请求都不会发。上传的工具会发一条，大小跟你照片差不多，而那个大小你看得见。
3. 或者更省事：把页面开一次，断开网络，再试着转点什么。把照片送出去解码的工具，这时候就不动了；自带解码器的那个不会。

这里的转换器就是照着这两条检查造的，这套道理更长的版本在[把文件传给在线转换器安全吗](https://abox.tools/zh/guides/is-it-safe-to-upload-files/)里。
