首页/博客/如何将 HEIC 转换为 JPG(iPhone 照片)

如何将 HEIC 转换为 JPG(iPhone 照片)

HEIC 是 iPhone 上的默认照片格式。了解它为何存在、为何其他应用无法打开它,以及如何免费将 HEIC 文件转换为 JPG。

作者 PhotoTools 编辑团队 · 更新于 2026 年 7 月 19 日

已于 2026 年 7 月 19 日对照 Apple HEIF/HEVC 支持指引、WebKit Safari 17 HEIC 说明、MDN 图像格式指南、Microsoft HEIF/HEVC 编解码器指引、Chrome Lighthouse 图像格式建议、Google WebP 文档以及 PhotoTools 的 HEIC 转换器实现完成审校。

把 HEIC 转成 JPG——免费,在浏览器里

免费 · 无需上传 · 在浏览器中运行

简短答案

HEIC 存 iPhone 照片挺好,但作为公开网页发布的默认格式仍然不合适。它省空间、画质保持得不错,在现代 Apple 软件里也顺畅。问题在于同一个文件要穿过浏览器、上传表单、CMS、邮件客户端、Windows 设备、Android 设备、图像 CDN、社交排期工具时。

面向公共网站,发布前请先转换。网页投递用 WebP 或 AVIF,保留 JPEG 作为兼容兜底;除非表单要求或你需要一份无损编辑副本,否则不用 PNG。想保留 iPhone 上省空间的主档,就把原始 HEIC 留着。

这不是因为 HEIC 本身是差的图像格式。而是因为网站图片需要广泛的解码器支持、可预测的 MIME 处理、缩略图生成、兜底行为和简单的服务端处理。HEIC 在其中好几项上还比较薄弱。

HEIF 和 HEIC 并不完全是一回事

大多数文章会跳过的第一个细节:HEIF 和 HEIC 相关,但并不相同。

HEIF 是 High Efficiency Image File Format 的缩写,是一个容器。容器可以装图像数据、缩略图、序列、元数据、深度信息和其他辅助数据。HEIC 是 iPhone 照片的常见口味:一个图像数据用 HEVC(也叫 H.265)编码的 HEIF 文件。

这个区别在实际流程里很关键。一个系统可能认得 HEIF 容器,却仍然需要 HEVC 解码器才能读典型的 .heic 照片。Microsoft 的支持文档就体现了这种拆分:Windows 用户处理 Apple 风格的 HEIF/HEVC 媒体时,可能需要同时安装 HEIF 和 HEVC 两个组件,照片应用才用得了这些文件。

说白了:

名词 含义 为什么重要
HEIF 容器格式 可以装不同的图像编码与元数据
HEIC 使用 HEVC 图像压缩的 HEIF 常见的 iPhone 照片文件
HEVC 很多 HEIC 文件内部用的压缩技术 通常是许可/解码器问题的根源
JPG/JPEG 更早、支持面极广的照片格式 更大,但几乎哪里都认
WebP/AVIF 现代的网页投递格式 更适合公共网站

网页兼容性问题一般不是"像素质量差",而是"接收方软件缺了合适的容器与编解码通路"。

iPhone 为什么用 HEIC

苹果在 iOS 11 和 macOS High Sierra 中引入了 HEIF 与 HEVC 支持。Apple 支持文档把实际理由说得很清楚:HEIF 和 HEVC 在保持相似视觉质量的同时,比 JPEG 和 H.264 有更好的压缩,因此在设备和 iCloud 照片里占的存储更少。

对手机相机来说这是合理的取舍。一个人可能拍成千上万张照片、保存很多年,大多数时候只在照片、信息、隔空投送、iCloud、预览等 Apple 感知应用中查看。在那种世界里,HEIC 基本是"隐身"的——照片看起来正常,还更省空间。

Apple 也给了用户一个兼容性开关。在 iPhone 或 iPad 上,相机 > 格式 > 兼容性最佳会让新照片改用 JPEG;高效则切回 HEIF/HEVC。Apple 还提到,通过隔空投送、信息、邮件等方式分享时,设备"可能"会在接收方不支持较新格式时自动发送一个更兼容的版本。

那个"可能"是有讲究的。自动转换有帮助,但并不覆盖所有网页上传路径。如果你从"文件"里选一张、从 iCloud 导出原图、把一张原始 .heic 拖进 CMS,或从桌面文件夹上传,网站接到的就可能是原始 HEIC 文件。

浏览器支持才是网页真正的问题

网站需要的不只是"某个地方的某台设备"能打开图像,而是访客的浏览器能在 <img> 标签、CSS 背景、社交预览、CMS 预览、搜索预览、图像 CDN,甚至邮件客户端和应用 webview 里解码这张图。

MDN 的图像格式指南列出的常见网页图像格式是:AVIF、GIF、JPEG、PNG、SVG 和 WebP。HEIC 不在这个跨浏览器的常规集合里。Safari 17 在 Safari、Safari View Controller 和 WKWebView 中加入了 HEIC 支持,这对 Apple 优先的导入与编辑流程很有用,但一个 Safari 特性并不能让格式在 Chrome、Firefox、Edge、Android、Windows、嵌入式浏览器或所有应用 webview 里都"安全"。

微妙之处就在这里。"Safari 支持 HEIC"和"HEIC 适合公开网页"是两件事。

浏览器/流程 面向公共投递的 HEIC 实际状态
Apple 平台上的 Safari 17+ 能处理 HEIC;适合 Apple 设备流程
Chrome / Edge / Firefox 公共网站投递 别假设 HEIC 能渲染
Android 应用内浏览器 别假设 HEIC 能渲染
CMS 媒体库预览 取决于浏览器和服务端图像栈
图像 CDN 缩放 取决于处理后端的解码器支持
邮件客户端 除非专门测过,否则视 HEIC 为有风险

面向公开的图像地址,请使用浏览器和工具都期待的格式。WebP、AVIF 加 JPEG 兜底没有 HEIC 那么"新潮",但至少不会让页面显示破图图标。

Safari 17 的支持有帮助,但不解除兜底的必要

WebKit 宣布 Safari 17、Safari View Controller 和 WKWebView 支持 HEIC。Apple Developer 的 WWDC23 媒体格式专场也把 HEIC 定位为处理 iPhone 上传照片时"不必转换"的选项,尤其在 Apple 的 web 与 app-view 语境下。

这是实实在在的改进。它意味着一个主要面向 Apple 设备用户的 web 应用,能比以前更直接地导入、预览和编辑 iPhone 照片。

但 Apple 同时也说了:HEIC 在其他平台上支持并不广泛,可能应作为一种"备选格式"来使用。同一场次的建议是使用 <picture> 元素,让浏览器挑一个自己支持的格式。

对于一个受众可控、Apple 用户占多数的应用,你可以像下面这样测试:

<picture>
  <source srcset="/photos/hero.heic" type="image/heic" />
  <source srcset="/photos/hero.avif" type="image/avif" />
  <source srcset="/photos/hero.webp" type="image/webp" />
  <img src="/photos/hero.jpg" width="1200" height="800" alt="Product photo" />
</picture>

对大多数公共网站,我会把思路反过来:从 AVIF 或 WebP 开始,JPEG 作兜底,HEIC 只存作原始上传或内部主档。公开页面不应该依赖 HEIC 能被解码。

HEIC 在真实网页流程中会在哪些地方翻车

HEIC 的失败一般看起来不戏剧,只是无聊又让人困惑:

  • 上传按钮接受了文件,但预览一片空白。
  • 服务器拒绝它,因为 image/heic 不在允许的 MIME 列表里。
  • 浏览器给出的 file.type 是空的或异常。
  • CMS 存下了原文件,但生成不了缩略图。
  • 图像优化插件跳过了它。
  • CDN 无法为它做缩放。
  • 社交分享预览里没有图。
  • Windows 上的收件人看到一个打不开的附件。
  • 客服收到一张"你的照片坏了"的工单,找不到明显原因。

这就是为什么 HEIC 即便在自己 iPhone 上没问题,也会让人觉得不可靠。网页发布是一条链:文件必须依次通过文件选择器识别、客户端预览、上传校验、服务端解码、衍生资源生成、CDN 投递、浏览器渲染,有时还要过搜索/社交预览。链上任何一环不支持,都会掉链子。

Windows 支持 ≠ 浏览器支持

Windows 在某些情况下能处理 HEIF/HEVC 文件,尤其是装了 Microsoft Store 上合适的扩展或有相应应用支持时。Microsoft 表示照片应用可能需要 HEIF 和 HEVC 扩展才能使用这些文件。Microsoft 还提到 OneDrive 可以在网页上预览 HEIF 与 HEVC 文件,但下载到 Windows 本地后,可能仍需要编解码器才能打开。

这并不代表一个 Windows 访客的浏览器就能渲染你那个 .heic 图像地址。操作系统预览支持、OneDrive 预览支持、照片应用支持和浏览器图像解码是几件不同的事。

这是开发者常掉进去的坑:

  1. 一台 Windows 机器装了扩展,能在照片应用里打开 HEIC。
  2. 开发者据此断定文件"被支持了"。
  3. 同一张图作为普通网站图像在另一个用户那里失败。

面向网页投递,要在目标浏览器里测试,而不是只在操作系统的预览应用里测。

上传表单为什么会拒收 HEIC

许多上传表单是在"实际文件列表就是 JPEG、PNG,也许再加 WebP"的时代写的。它们的校验往往长这样:

  • 扩展名白名单:.jpg、.jpeg、.png、.webp。
  • MIME 白名单:image/jpeg、image/png、image/webp。
  • 服务端图像库:期待 JPEG/PNG/WebP/AVIF 解码器。
  • 缩略图任务:调用一个没做 HEIC 支持的库。
  • 文件大小规则:假设转换输出是 JPEG。

上面任何一条 HEIC 都可能过不去。就算前端接受 image/*,服务端也可能拒。就算服务端存下了,缩略图生成器也可能失败。就算缩略图生成器行,最终公开地址也可能在部分浏览器里渲染不了。

如果你运营的网站接受用户上传照片,最稳的流程是:

  1. 如果你的用户会从 iPhone 上传,就把 HEIC 当作可以接受的输入格式。
  2. 在客户端或服务端解码它。
  3. 如果需要原文件就存下来。
  4. 生成 WebP/AVIF 加 JPEG 兜底作为公共投递文件。
  5. 转换失败时给用户一条清晰的提示。

不要把原始 HEIC 作为唯一的公开图像来提供。

把 HEIC 转成什么

最合适的输出取决于照片要去哪里。

用途 推荐输出 理由
邮件附件 JPG 面向混合收件人最稳
政务或求职表单 除非表单另有说明,一律 JPG 大部分上传校验只认它
表单要求 PNG PNG 按表单要求来
公共网站图片 WebP + JPEG 兜底 比 JPEG 更小,浏览器支持面广
高流量网站首图 AVIF + WebP/JPEG 兜底 在流水线能兜住时压缩更强
截图类 HEIC PNG 或无损 WebP 文本与平面边缘更干净
Apple 照片里的存档 保留 HEIC 省空间,且保留原文件
老软件里编辑 JPG 或 PNG 导入不容易翻车

JPG 是兼容性方案;WebP 通常是网页投递的实用方案;AVIF 适合你能生成并测试兜底时使用;PNG 是给"要精确像素"或"表单硬性要求"用的,不是给普通照片用的。

HEIC 与 AVIF 在网页上的对比

HEIC 和 AVIF 容易混,因为都很"现代",且都能装进 HEIF 家族的容器里。对网站主人来说,差别在"采纳度"。

MDN 把 AVIF 列为 Chrome、Edge、Firefox、Opera 和 Safari 都支持的网页图像格式。Chrome 的 Lighthouse 建议使用 AVIF 与 WebP 作为现代图像格式,因为它们相比更老的 JPEG 与 PNG 能减少传输大小。Google 的 WebP 文档也把 WebP 描述为主流浏览器原生支持、对站长广泛有用。

HEIC 没有同样的跨浏览器故事。它在 Apple 的流程里可以很出色,但公共网页更青睐"哪儿都能渲染,或者能干净降级"的格式。

用这条规则:

  • HEIC 用来做原始的 iPhone 存储。
  • WebP 作为日常网站的默认。
  • AVIF 用在字节节省能撑得起流水线复杂度的页面。
  • JPEG 用作兜底与非网页兼容。
  • PNG 用在精确图形与严格上传要求。

转换过程中的元数据与隐私

HEIC 照片也会携带跟 JPEG 一样让人担心的敏感元数据:GPS 坐标、拍摄时间、设备型号、镜头信息、软件历史。有些转换器保留元数据,有些直接剥掉,还有些只保留一部分。

PhotoTools 的转换器会解码 HEIC 像素,再通过浏览器 canvas 流水线重新导出。在这个项目里,HEIC 文件通过 MIME 类型或 .heic/.heif 扩展名被识别,用 heic2any 解码成 PNG 帧 blob,再经 createImageBitmap 和 OffscreenCanvas 绘制,最后用 convertToBlob() 导出为 JPG、PNG、WebP 或 AVIF。这种基于 canvas 的重编码在你想要一份干净投递文件时很有用,但涉及 GPS 隐私时仍应检查输出。

要归档保留元数据,请留住原始 HEIC;要为分享去掉元数据,请在发送前检查转换后的文件。

PhotoTools 如何处理 HEIC

PhotoTools 把 HEIC 视为一种输入格式,而不是最好的公开输出。这对大多数网页流程来说是合理的定位。

当你把 HEIC 或 HEIF 文件拖进转换器时,浏览器端代码会通过 MIME 类型或扩展名识别它。多帧 HEIC 文件会被展开为一张张帧卡片。每一帧都能导出为 JPG、PNG、WebP 或 AVIF,源照片不需要上传到转换服务器。

这在这些场景里有用:

  • 需要在 Windows 上打开的 iPhone 照片。
  • 拒收 HEIC 的网页表单。
  • 需要 JPEG 或 WebP 的 CMS 上传。
  • 门户列出了可接受格式的护照或申请照。
  • 发布前要转成 WebP 的商品图。
  • 你不希望把原文件送到第三方服务器的私人照片。

日常分享选 JPG。网页发布选 WebP 或 AVIF 加兜底。表单明确要求 PNG 就选 PNG。

发布 iPhone 照片前的实用清单

当照片以 HEIC 开始时,用下面这份清单:

  1. 查一下目标平台接受的文件类型。
  2. 如果是公共网站,别把原始 HEIC 作为唯一来源发布。
  3. 你的站点支持时,投递用 WebP 或 AVIF。
  4. 为老浏览器、邮件和严格的上传系统留一份 JPEG 兜底。
  5. 只在需要精确像素或表单硬性要求时使用 PNG。
  6. 把照片缩放到实际会显示的最大尺寸。
  7. 想清楚元数据是要保留还是去掉。
  8. 最终页面别只在 Safari 里测。

一句话:HEIC 是不错的采集与存储格式,但还不是可靠的通用网页投递格式。把它当作原始文件,然后导出成你的受众与流水线真能打开的版本。

参考的技术资料

本文对照 Apple 支持的 HEIF/HEVC 指引、WebKit 关于 Safari 17 HEIC 的公告、Apple Developer 的 Web 媒体格式专场、MDN 图像格式指南、Microsoft 关于照片应用 HEIF/HEVC 扩展的指引、Microsoft 关于 OneDrive 中 HEIF/HEVC 的说明、Chrome Lighthouse 的图像格式建议以及 Google 的 WebP 文档进行了审校。

常见问题

为什么 HEIC 图像在网络上不完全兼容?

HEIC 本质是一个 HEIF 图像,通常用 HEVC 压缩存储像素。Apple 平台能很好地处理它,Safari 17 也加了 HEIC 支持,但常见的跨浏览器图像组合仍然是 JPEG、PNG、GIF、SVG、WebP 和 AVIF。Chrome、Firefox、Edge、很多 CMS 工具和很多上传流水线还是只认这几种格式。

Safari 支持 HEIC 图像吗?

是的,Safari 17 在 Safari、Safari View Controller 和 WKWebView 中加入了对 HEIC 图像的支持。这对 Apple 设备的流程有帮助,但并不代表 HEIC 可以作为公共网站的唯一图像来源,因为访客可能用的是 Chrome、Firefox、Edge、Android、Windows 或应用内浏览器。

我应该直接把 HEIC 图像上传到网站吗?

通常不建议。做网页投递时,把 iPhone 的 HEIC 照片转成 WebP 或 AVIF,遇到看重兼容性的场景再保留一份 JPEG 兜底。把 HEIC 当作原始存档格式,而不是公共图像地址——除非你的受众范围可控,且已经测试过。

什么时候该把 HEIC 转成 JPG?

需要一个最安全的文件用于邮件、网页表单、求职申请、政务门户、Windows 收件人、老图像编辑器或混合设备分享时,转成 JPG。JPG 比 HEIC 大,但几乎哪里都认。

什么时候该把 HEIC 转成 PNG?

表单明确要求 PNG、你需要一份无损编辑副本,或者照片本身是平面图形或截图内容时,转成 PNG。普通相机照片一般选 JPG 或 WebP 会更小。

HEIC 和 HEIF 是同一种东西吗?

不是。HEIF 是容器格式;HEIC 是 iPhone 常见的那种 HEIF 变体,图像数据用 HEVC 压缩存储。这个区别很重要,因为一个工具可能声称支持 HEIF,但如果缺 HEVC 解码器,仍然打不开一张 HEVC 编码的 HEIC 文件。

为什么 Windows 会提示要装 HEIF 或 HEVC 扩展?

Microsoft 说 Windows 用户可能需要 HEIF 和 HEVC 扩展,才能在照片应用中处理这些文件。HEIF 容器和 HEVC 压缩的图像数据是两件独立的事,所以有些系统需要多个组件才能完整支持。

把 HEIC 转成 JPG 会丢元数据吗?

看转换器。有些工具会复制 EXIF 字段;基于浏览器 canvas 的转换往往输出一份没有相机元数据的全新像素文件。如果你在意 GPS 隐私,分享前请检查转换后的文件。

对网站来说 AVIF 比 HEIC 更好吗?

公共网页投递大多数场景下是的。AVIF 也基于现代压缩思路,主流浏览器都支持。HEIC 在 Apple 优先的流程里可能有用,但对网站来说 AVIF、WebP 加 JPEG 兜底更实用。

能不上传照片就转换 HEIC 吗?

可以。PhotoTools 会识别 HEIC 和 HEIF 文件,用 heic2any 在你的浏览器里解码,再通过浏览器的 canvas 流水线导出为 JPG、PNG、WebP 或 AVIF。源照片不需要发到服务器。

继续阅读