先说那张照片里有什么

周日晚上整理手机相册,随手点开一张五月份在上海拍的照片的属性,往下翻了半天没到底。iPhone 拍的图,人眼看到的是一张夜景,文件里却写着一大串跟画面无关的东西:相机是 iPhone 12 Pro、快门 1/30 秒、ISO 1000、光圈 f/2,还有一行 GPS 坐标 31.236769, 121.487189,以及海拔 19.7 米。

我把这张原图拖进刚上线的 EXIF 查看工具,信息面板一口气列出了 14 项可读的拍摄信息,右下角还提示「发现 50 项元数据(含 GPS 位置)」。14 项是它能读懂的,剩下那三十多项是厂商私有的、或是它不认识的标签,但一样原封不动躺在文件里。

EXIF 查看工具的信息面板,列出了相机品牌 Apple、型号 iPhone 12 Pro、快门 1/30 秒、ISO 1000、光圈 f/2 以及 GPS 坐标 31.236769, 121.487189 等 14 项拍摄信息
一张 iPhone 原图的信息面板:设备、拍摄参数、GPS 坐标都在文件里

最要命的是那一行坐标

拍摄参数泄露的是「你用什么设备、什么时候拍的」,坐标泄露的是「你在哪里拍的」。前者的危害有限,后者是实打实的隐私。坐标 31.236769, 121.487189 精确到小数点后 6 位,换算下来误差在十米量级,点开地图链接直接能定位到上海市中心的一栋楼。

想一想这个场景:你在家里拍张照片发到业主群、车友群,或者挂到闲鱼卖东西。对方右键保存,打开属性,GPS 坐标就在那里。你的家庭住址、你常去的地方,就这样跟着照片走了。这不是「理论上的风险」,坐标是图片文件里现成的字段,任何人都读得到。

所以发图前把位置信息抹掉,是件很实际的事。但抹之前,得先知道自己照片里到底有没有这些信息。

两种清法,我各跑了一遍

这个工具给了两种清除范围:全部元数据和仅位置信息。名字挺直白,但结果差挺多,我拿同一张图各跑了一遍,再逐字节比对。

「全部元数据」是把 EXIF 整块摘掉。处理结果里写着「清除 50 项 · GPS 已移除」,下载回来的文件我用命令行扫了一遍,Exif 标记出现次数从 1 变成 0,macOS 的元数据查询里经纬度也变成了空。像素数据原样保留,画质不受影响。

处理结果卡片,显示方式为重编码修正方向、清除 50 项元数据、GPS 已移除、方向已修正,原始 2.4 MB 输出 2.5 MB
「全部元数据」清除结果:50 项元数据一次清掉,GPS 已移除

「仅位置信息」更有意思。它只把 GPS 那一小节摘掉,相机型号、快门、光圈这些拍摄参数原样留下。适合什么场景?你想跟人显摆「这是 5 定焦拍的、光圈开到 f/1.4」,又不想让人知道你在哪拍的。我验证了一下,清除后文件的 EXIF 还在,但经纬度已经是空值。

一个我没料到的细节

处理结果里有一行「方式:重编码修正方向」,这跟我一开始想的不一样。我以为清除就是无损地把元数据段抠掉,结果这张竖拍照片走了另一条路:它把「竖着」这个方向信息直接烧进了像素,重编码了一次。

为什么?iPhone 竖着拍的照片,像素其实是横着存的,靠一个方向标记告诉看图软件「显示的时候转 90 度」。你要是把这个标记连同其它元数据一起删了,照片就会横躺过来。所以工具的做法是:检测到方向标记,就把方向「烧」进像素,顺带把元数据一起清掉。代价是这一张会重编码一次,约 95% 质量,肉眼基本看不出区别。

这不是 bug,是它替你处理了「清干净」和「照片不歪」这两件事不能兼得的坑。文件体积从 2.4 MB 变成了 2.5 MB,就是重编码的痕迹。

什么时候该清,什么时候不用

我不建议见着照片就清,那样有点过度。拍风景、拍食物、自拍发朋友圈,这些图里没有需要隐藏的定位,清了反而多一步操作。真正该清的,是下面这几类:

  • 在家里、公司、学校这些固定地点拍的,要发到陌生人群里的照片
  • 挂闲鱼、转转卖闲置,背景能看出你住哪个小区的商品图
  • 涉及孩子、家人的照片,尤其带着定位发到公开平台
  • 给客户、合作方交付的成品图,你未必想让对方知道拍摄场地

反过来,摄影师交付样图时想展示「用什么设备拍的」,可以选「仅位置信息」,把设备参数留着,把拍摄点抹掉。

这事在哪办

这套查看和清除都在 图片 EXIF 查看与清除 工具页完成。JPG、PNG、WebP 全程在浏览器里处理,图片不上传;只有 iPhone 的 HEIC 和 TIFF 格式浏览器读不了,需要上传服务端处理,处理完立即删除。整件事不用注册、不用装软件,点开网页拖图进去就行。

我的建议是,把它当成发图前的最后一步:重要照片发出去之前,先拖进去看一眼带没带坐标,有就清一下。几十秒的事,省掉的是地址被人扒出来的风险。