1 选好你的 HEIC 和 AVIF 照片
手机里直接拷的、备份里翻出来的、存储卡上拿的,都行。文件就在这台机器上读,画面也在这里解码。这个页面没有上传这一步,背后也没有服务器。
opens the file picker natively. Calling .click() on a display:none input is refused by Safari and by some Chrome configurations, so the input stays in the layout: visually hidden, still focusable, and reachable by keyboard. There is no JavaScript in that path at all. --> 将 HEIC 和 AVIF 图片拖到这里 或点击选择:.heic, .heif, .avif,根据文件内容识别格式 AVIF 使用浏览器解码器,不加载 HEIC 引擎。输出仍为 JPEG、PNG 或 WebP。只输出第一张解码后的图片,颜色或 HDR 可能改变。AVIF 元数据一律不保留,元数据复选框仅适用于 HEIC。原文件保持不变。
2 想要什么样的结果
保留日期、相机和参数 按手机写的样子原样复制过去,所以转换后的照片还是按拍摄那天排序,不是按转换那天。照片带 GPS 坐标的话,坐标也一起带上,上面那份列表写明了你的哪几张带着。关掉它,出来的 JPEG 里只剩画面。
选哪边都一样,这里没有任何东西会被读给谁听。这个选择管的是你拿回去的文件里装什么,不是这个页面拿它做什么。想逐条细看那些标签,或者把已经是 JPEG 的照片里的标签清掉,那是 EXIF 查看与清除干的活。
3 转换
转好了
# HEIC 转 JPG 转换 iPhone 照片 iPhone 拍的照片,换成什么都打得开的格式。 > 在浏览器里把 iPhone 的 HEIC 和 AVIF 照片转成 JPG。解码器跑在你自己的机器上,不上传,不注册,断网也能用,拍摄日期和相机信息可以一起带过去。 元数据复选框和预览仅适用于 HEIC,AVIF 元数据一律不保留。 这是一个浏览器交互工具,地址是 https://abox.tools/zh/heic-to-jpg/。文件在运行该浏览器的设备上处理。主动分享和可选联网功能都在页面上说明。下文是它的文字说明;使用工具请打开该地址。 ## 你的照片**在浏览器里处理**,无须上传处理。 解码这一步,在你自己的浏览器里、用你自己的硬件完成。HEIC 是浏览器唯一打不开的图片格式,所以这个页面把解码器一并带上了,大约 1.4 MB,从本站发出,第一次访问之后就有缓存。别的 HEIC 转换器为什么个个要你上传?因为它们把编解码器放在服务器上,照片只能送过去。这个页面把编解码器放在了这边。页面上根本没有联网功能,另一头也没有服务器能接住照片。 - ✗ 不上传 - ✗ 不注册 - ✗ 不限大小 - ✓ 断网能用 - ✓ 开源 ## HEIC 照片怎么转成 JPG 1. **选好你的 HEIC 和 AVIF 照片。** 拖到下面的方框里,或者点开自己挑,直接从手机备份、桌面文件夹里选都行。浏览器直接从你的硬盘上读,这期间没有东西发出去。列表会写明每一张是什么,里面有些什么。 2. **看看这些照片都带着什么。** 每一行写出拍摄日期、相机型号,还有这个文件里有没有 GPS 坐标,最后这项用绿色标出来,因为它才是值得留神的。这些不用解码画面,直接从容器里读,所以不花什么代价,也立刻就有。 3. **选格式,再定那些细节。** 没有特别理由就选 JPEG。转换图的本来就是到哪儿都打得开。质量滑块停在 92,这一档上照片很难跟原图区分开。那个勾选框决定日期、相机和位置要不要一起带过去。 4. **按“转换”,然后下载。** 解码器在第一次转换时到位,大约 1.4 MB,只这一次。之后每张照片都在你自己的机器上解码、写出。一个文件给你一个下载按钮,多个文件另外给你一个 zip。 ## 说得更细的版本 [手机存下的那张照片,和那个什么都打不开的格式](https://abox.tools/zh/guides/convert-heic-to-jpg/): iPhone 把照片存成 HEIC,而半个互联网打不开它。这个格式是什么,为什么只有 Safari 解得了,转换要拿画质换多少,以及怎么做到不把照片交给任何人。 ## 工具箱里还有 - [WebP 转 JPG](https://abox.tools/zh/webp-to-jpg/): 把网页保存的图片,变成所有软件仍然接受的格式。 - [PNG 转 WebP](https://abox.tools/zh/png-to-webp/): 同一张图片,常常减少三分之一体积,透明区域保持完整。 - [AVIF 转 JPG](https://abox.tools/zh/avif-to-jpg/): 把网站如今保存的格式,变成所有软件一直支持的格式。 - [证件照制作](https://abox.tools/zh/id-photo/): 选择支持的国家和证件。公布的要求与指导值均有标注。 ## 常见问题 ### 我的照片会传到什么地方去吗? 不会。读取、解码、写出,全由你自己的浏览器在你自己的硬件上完成。这个工具没有任何联网功能,不取东西,也不发东西。页面的 `Content-Security-Policy` 把它可能联的地址全列了出来,没有一个是本站的。确实会加载的只有解码器,它来自本站,只加载一次,而且发生在你的照片被牵扯进来之前。 ### 为什么第一次打开要下载 1.4 MB? 因为 HEIC 是浏览器唯一打不开的图片格式。它是装在盒式容器里的一帧 HEVC,只有苹果设备上的 Safari 有解码器,Chrome、Firefox 和 Edge 干脆不认这个文件。所以 HEIC 转换器总得从某处弄个解码器来,能放的地方只有两个,服务器或者这个页面。别人都选了服务器,这就是它们个个要你上传照片的原因。这一个改成自带一份编译成 WebAssembly 的 `libheif`。它从本站发出,第一次访问之后就有缓存。你的照片哪儿也不去,代价就是这 1.4 MB,仅此而已。 ### 转出来的 JPEG 还保留拍摄日期、相机和位置吗? 你要它留就留,页面上有个勾选框。开着的时候,EXIF 块从 HEIC 里原样复制出来,按手机写的样子写进 JPEG,所以转换后的照片仍然按拍摄那天排序,而不是按转换那天。大家抱怨 HEIC 转换器的,正是这一点。只有一个标签会改,就是方向。它被设成“正立”,因为旋转已经作用在像素上了,看图软件要是再转一次,每一张竖构图都得躺下。把勾选框关掉,出来的 JPEG 里只剩画面。 ### 它会去掉 GPS 坐标吗? 它先告诉你坐标在那儿,然后照你说的办。还没开始转,每张照片那一行就已经写明文件里有没有坐标,这一步比手机做得多。取消勾选“保留日期、相机和参数”,坐标跟别的一切一起被挡在 JPEG 之外;勾着,它们就跟过去。想逐条细看那些标签,或者把已经是 JPEG 的照片里的标签清掉,那是 [EXIF 查看与清除](https://abox.tools/zh/exif-editor/)干的活,而且它不重新压缩画面。 ### 画面会重新压缩吗? 会,而且非压不可。HEIC 和 JPEG 是两种编码,从一种到另一种,只能把画面解开再编一遍。你能拿捏的是这一下的代价有多大。质量滑块默认 92,这一档上照片非常难跟原图区分开。要是一点损失都不想要,又不介意文件大上五到十倍,菜单里还有 PNG。 ### 文件名叫 .jpg,其实是 HEIC,怎么办? 照样能用。拖进来的文件按开头那几个字节判断,不按名字。名字取决于最后碰过它的那个应用怎么叫它,而一个名叫“.jpg”的 HEIC,正是大家跑来找这类工具的常见原因之一。真的是 JPEG 或者 PNG 的文件会被挡下来,并告诉你它其实是什么,不会被转成一份自己的副本。 ### Live Photo 或者连拍能转吗? 里面的静态画面能转。一个 HEIC 可以装不止一张画面,装几张就转几张,按原文件名加编号命名。Live Photo 的视频那一半,是手机搁在 HEIC 旁边的另一个文件,不在这里,也就无从转起。深度图和缩略图在容器里,但不是谁想要的画面,原样留着不动。 ### 也能转换 AVIF 图片吗? AVIF 使用浏览器解码器,不加载 HEIC 引擎。输出仍为 JPEG、PNG 或 WebP。只输出第一张解码后的图片,颜色或 HDR 可能改变。AVIF 元数据一律不保留,元数据复选框仅适用于 HEIC。原文件保持不变。 ### 免费吗?要注册吗? 免费,没有账号,不用登录,没有试用期,也没有水印。文件的数量和大小同样没有上限,因为没有哪台服务器在为它们掏钱,活是在你自己的机器上干的。本站带广告,经费就是这么来的,广告拿不到关于你照片的任何信息。 ### 断网能用吗? 能,连解码器一起。页面开一次之后断网,它照样处理你的照片,跟之前没有区别。这也是“什么都没上传”最有分量的证明。一个把 HEIC 送出去解码的转换器,拔线那一刻就停了,这一个不会。 ## 这条隐私承诺怎么核实 - **处理在这个浏览器里完成。** 本工具在浏览器里处理输入和结果,处理代码不把它们上传去处理。Content-Security-Policy 限制可用资源和连接目的地,但已允许的主机仍可接收请求。策略不检查载荷,不能单独证明什么都没有发出。请把具体操作的请求与源码核对,或断网完成该本地操作。 - **解码器从这儿来,也哪儿都不去。** HEIC 说白了就是装在盒式容器里的 HEVC,除了 Safari 没有浏览器解得开,所以这个页面自带一份编译成 WebAssembly 的 `libheif`,大约 1.4 MB,提交在这个仓库里,从本站发出,跟这里其他文件一样由 service worker 缓存。它不从 CDN 取。走 CDN 等于把一个第三方塞进每一次访问,还会让这个工具离线用不成。二进制放在脚本内部而不是搁在旁边,就是为了启动它连一次 fetch 都不用发。 - **这里没有任何东西会去联网取数据。** 为这个工具写的文件里,一个 `fetch`、一个 `XMLHttpRequest`、一个 `sendBeacon` 都找不到。随附的这份引擎跟所有 Emscripten 构建一样,带着从某个 URL 取 `.wasm` 的加载路径,但那些路径走不到,二进制本来就在手上;就算走到了,`connect-src` 里只列了 Google 的统计端点,浏览器当场就会拒绝。能当证据的是那条策略,不是那句话。 - **元数据在这儿读出来,也报给你看。** 页面上那份列表会写明每张照片带着什么,拍摄日期、相机,还有里面有没有 GPS 坐标。把 JPEG 交给别人之前,这些多半是你想先知道的。读取由 `src/boxes.js` 在这个浏览器里完成,结果显示在这个页面上,写进你的 JPEG 还是丢掉,你自己定。这个仓库里没有哪个统计事件会带上文件名、日期、坐标或者数量。 - **Google 加载了什么,又拿不到什么。** 广告脚本和统计脚本来自 Google,捐助按钮来自 Buy Me a Coffee。关于你照片的信息,一条都没给它们。读文件、解码、写文件的每一行代码都从本站发出,也都摆在仓库里。 - **断网照样能用。** 把页面开一次,然后断网,这个工具跟原来一模一样,解码器也一起缓存下来了。这是最省事的一条证明,在这个页面上还格外有分量。一个把照片送出去解码的转换器,绝无可能做到这一点。 **你可以自己核对。**上面这些不用你信。这个页面是仓库里的模板和配置生成出来的,构建脚本你能读,也能自己跑一遍,跑出来的结果就提交在 `dist` 分支上。拿实际发给你的内容,跟你自己从源码构建出来的结果对一遍就知道了: https://github.com/A-Box-of-Tools/website 最值得先读的几个文件:`config/site.toml` 里是 Content-Security-Policy,`src/heif.js` 里是解码器怎么加载、允许干什么,`src/boxes.js` 里是找出照片元数据的容器解析,`src/exif.js` 里是这些元数据进 JPEG 时的遭遇。引擎本身是 `vendor/libheif.js`,原样未改,许可证就放在旁边。
HEIC 照片怎么转成 JPG
- 选好你的 HEIC 和 AVIF 照片。拖到下面的方框里,或者点开自己挑,直接从手机备份、桌面文件夹里选都行。浏览器直接从你的硬盘上读,这期间没有东西发出去。列表会写明每一张是什么,里面有些什么。
- 看看这些照片都带着什么。每一行写出拍摄日期、相机型号,还有这个文件里有没有 GPS 坐标,最后这项用绿色标出来,因为它才是值得留神的。这些不用解码画面,直接从容器里读,所以不花什么代价,也立刻就有。
- 选格式,再定那些细节。没有特别理由就选 JPEG。转换图的本来就是到哪儿都打得开。质量滑块停在 92,这一档上照片很难跟原图区分开。那个勾选框决定日期、相机和位置要不要一起带过去。
- 按“转换”,然后下载。解码器在第一次转换时到位,大约 1.4 MB,只这一次。之后每张照片都在你自己的机器上解码、写出。一个文件给你一个下载按钮,多个文件另外给你一个 zip。
说得更细的版本
手机存下的那张照片,和那个什么都打不开的格式 iPhone 把照片存成 HEIC,而半个互联网打不开它。这个格式是什么,为什么只有 Safari 解得了,转换要拿画质换多少,以及怎么做到不把照片交给任何人。
工具箱里还有
常见问题
我的照片会传到什么地方去吗?
不会。读取、解码、写出,全由你自己的浏览器在你自己的硬件上完成。这个工具没有任何联网功能,不取东西,也不发东西。页面的 Content-Security-Policy 把它可能联的地址全列了出来,没有一个是本站的。确实会加载的只有解码器,它来自本站,只加载一次,而且发生在你的照片被牵扯进来之前。
为什么第一次打开要下载 1.4 MB?
因为 HEIC 是浏览器唯一打不开的图片格式。它是装在盒式容器里的一帧 HEVC,只有苹果设备上的 Safari 有解码器,Chrome、Firefox 和 Edge 干脆不认这个文件。所以 HEIC 转换器总得从某处弄个解码器来,能放的地方只有两个,服务器或者这个页面。别人都选了服务器,这就是它们个个要你上传照片的原因。这一个改成自带一份编译成 WebAssembly 的 libheif。它从本站发出,第一次访问之后就有缓存。你的照片哪儿也不去,代价就是这 1.4 MB,仅此而已。
转出来的 JPEG 还保留拍摄日期、相机和位置吗?
你要它留就留,页面上有个勾选框。开着的时候,EXIF 块从 HEIC 里原样复制出来,按手机写的样子写进 JPEG,所以转换后的照片仍然按拍摄那天排序,而不是按转换那天。大家抱怨 HEIC 转换器的,正是这一点。只有一个标签会改,就是方向。它被设成“正立”,因为旋转已经作用在像素上了,看图软件要是再转一次,每一张竖构图都得躺下。把勾选框关掉,出来的 JPEG 里只剩画面。
它会去掉 GPS 坐标吗?
它先告诉你坐标在那儿,然后照你说的办。还没开始转,每张照片那一行就已经写明文件里有没有坐标,这一步比手机做得多。取消勾选“保留日期、相机和参数”,坐标跟别的一切一起被挡在 JPEG 之外;勾着,它们就跟过去。想逐条细看那些标签,或者把已经是 JPEG 的照片里的标签清掉,那是 EXIF 查看与清除干的活,而且它不重新压缩画面。
画面会重新压缩吗?
会,而且非压不可。HEIC 和 JPEG 是两种编码,从一种到另一种,只能把画面解开再编一遍。你能拿捏的是这一下的代价有多大。质量滑块默认 92,这一档上照片非常难跟原图区分开。要是一点损失都不想要,又不介意文件大上五到十倍,菜单里还有 PNG。
文件名叫 .jpg,其实是 HEIC,怎么办?
照样能用。拖进来的文件按开头那几个字节判断,不按名字。名字取决于最后碰过它的那个应用怎么叫它,而一个名叫“.jpg”的 HEIC,正是大家跑来找这类工具的常见原因之一。真的是 JPEG 或者 PNG 的文件会被挡下来,并告诉你它其实是什么,不会被转成一份自己的副本。
Live Photo 或者连拍能转吗?
里面的静态画面能转。一个 HEIC 可以装不止一张画面,装几张就转几张,按原文件名加编号命名。Live Photo 的视频那一半,是手机搁在 HEIC 旁边的另一个文件,不在这里,也就无从转起。深度图和缩略图在容器里,但不是谁想要的画面,原样留着不动。
也能转换 AVIF 图片吗?
AVIF 使用浏览器解码器,不加载 HEIC 引擎。输出仍为 JPEG、PNG 或 WebP。只输出第一张解码后的图片,颜色或 HDR 可能改变。AVIF 元数据一律不保留,元数据复选框仅适用于 HEIC。原文件保持不变。
免费吗?要注册吗?
免费,没有账号,不用登录,没有试用期,也没有水印。文件的数量和大小同样没有上限,因为没有哪台服务器在为它们掏钱,活是在你自己的机器上干的。本站带广告,经费就是这么来的,广告拿不到关于你照片的任何信息。
断网能用吗?
能,连解码器一起。页面开一次之后断网,它照样处理你的照片,跟之前没有区别。这也是“什么都没上传”最有分量的证明。一个把 HEIC 送出去解码的转换器,拔线那一刻就停了,这一个不会。