图片旋转在线工具

90°/180° 一键旋转,也能拉滑块任意角度精修倾斜的合影。iPhone 竖着拍上传后变横的照片,导入时按 EXIF orientation 自动复位。图片不上传服务器,浏览器本地处理,无广告无水印。

🔄
🔄

点击选择 或拖拽 / 粘贴一张图片

JPG · PNG · WebP | JPG 会自动读取 EXIF 方向并复位

常见问题

iPhone 照片传到电脑上是横的怎么办?

iPhone 竖着拍的 JPG,底层像素其实是横的,只是 EXIF 里写了个 orientation 字段告诉系统「显示时转 90°」。iOS 相册、微信、Chrome 都会看这个字段自动摆正,但 Windows 资源管理器、老版 Firefox、大部分政务/求职上传站点不看,所以看起来就是横的。本工具导入 JPG 时会读取 orientation,按正确方向复位并导出为 orientation=1 的纯正竖图——从此到哪儿都是正的。

旋转 45° 后四角为什么会空出一块?

只有 90° / 180° / 270° 这种直角倍数的旋转,画布尺寸能刚好装下旋转后的图。任意角度(30°、45° 等)旋转后,矩形斜着放,外接矩形必然变大,四角会露出一块背景。默认用透明填充(PNG/WebP 保留,JPG 会自动垫白),也可以在「四角背景」里选纯色。想直接裁掉四角空白,旋转完导出后用 图片裁剪 手动框内切区域即可。

旋转会损失画质吗?

90°、180°、270° 的整数倍旋转是无损的——像素只是搬家,一个都不重采样。任意角度旋转需要重新采样,Canvas 用的是高质量双线性插值,肉眼几乎看不出差别,但严格来说会有一点点边缘柔化。真正影响画质的是导出格式:PNG 完全无损;WebP quality 0.95 观感等同无损;JPG 建议 quality 保持 0.9 以上,别拉到 0.6 以下否则会有明显马赛克。

「水平翻转」和「旋转 180°」是一回事吗?

不一样。旋转 180° 是把图整体转半圈——上下颠倒、左右也颠倒,字变成上下翻转+左右反着的。水平翻转(镜像)只在左右方向对调,字变成镜像但仍然正着立,常用来修反了的自拍、把人物脸朝向翻到另一边构图。垂直翻转则只上下颠倒,字仍然从左往右读但整个倒过来,用得少,多是做倒影素材。

图片会上传到服务器吗?有大小限制吗?

不上传。旋转和翻转都是 Canvas 一次 drawImage 就能完成的几何变换,浏览器原生支持,全程不需要服务器。没有张数限制、没有大小限制(受设备内存约束,几十 MB 的照片通常没问题)、不需要注册、不加水印、没有广告。图片数据从进来那一刻起就没离开过你的电脑。

PDF 里的图能旋转吗?扫描件歪了怎么办?

本工具只处理图片,不直接读 PDF。扫描件常见的「歪了几度」问题正是任意角度旋转的典型场景:先把 PDF 页面截图或导出成 PNG/JPG,导入本工具,拉滑块微调 -3°、+2° 之类的小角度让文字边线水平,再用裁剪工具切掉四角空白,导出即可。

关于图片旋转,几件很多人不知道的事

旋转是所有图片编辑操作里看起来最简单的一个——按一下按钮的事,能有什么讲究?其实坑不少,尤其是 iPhone 用户经常遇到「照片传到电脑上是横的,可是我明明是竖着拍的」这种诡异问题,根源都在 EXIF orientation 这个字段上。理解了它,之后处理照片会少很多莫名其妙的麻烦。

EXIF orientation:一个只写在文件里的「显示指令」

数码相机和手机的传感器物理上是固定横着装的。当你把手机竖过来拍照,传感器还是横着采集像素,得到的原始像素数据仍然是横的,但相机同时会往 EXIF 里写一个 orientation 值(1~8),告诉后续看这张图的软件:「显示的时候请转 90° 顺时针」。真正把像素旋转一遍再存,相机要多花点电、拍照要多等一小会儿,也不划算,于是变成行业惯例——像素不动,只写元数据。

问题在于「后续看这张图的软件」并不都遵守这个约定。iOS 相册、微信、Chrome、Safari、Photoshop、Pr 都会看 orientation 自动摆正;Windows 资源管理器(旧版)、部分老浏览器、许多政务上传系统、简历投递平台、考试报名系统都不看。于是同一张竖拍照片,你在 iPhone 上是正的,传到电脑上是横的,上传到某个网站又变成横的——这不是照片坏了,是 orientation 元数据被这些软件忽略了。

解决办法有两种:一是让上传方去改代码(不可能),二是把 orientation 从元数据里「烘」进像素——真的把像素转一遍,然后把 orientation 改成 1(表示无需旋转)。本工具导入 JPG 时会自动做第二种:读取 orientation → 反向旋转/翻转像素让它变正 → 导出为 orientation=1 的图。这张图之后到哪儿都是正的,不再依赖软件是否遵守约定。

orientation 的 8 个值都在做什么

值含义典型来源
1正常,无需处理横拍照片
2水平翻转极罕见(前置摄像头镜像)
3旋转 180°手机上下颠倒拍
4垂直翻转极罕见
5顺时针 90° + 水平翻转极罕见
6顺时针 90°手机竖拍(Home 键在下)
7逆时针 90° + 水平翻转极罕见
8逆时针 90°手机竖拍(Home 键在上)

日常见到的 99% 是 1、3、6、8 这四种。带翻转的 2/4/5/7 存在只是为了兼容一些奇怪的相机固件,多数正常拍摄不会产生。

90°、180° 旋转是无损的,任意角度不是

把一张图顺时针转 90°,本质上是把像素坐标 (x, y) 全部映射成 (H-1-y, x)——每个像素找到自己的新位置搬过去,没有一个像素被丢弃、没有一个像素需要「猜」新颜色。所以 90°、180°、270° 旋转是严格无损的,可以来回转多少次都不掉画质。

任意角度就不同了。转 30° 时,原图坐标 (x, y) 会映射到一个非整数坐标(比如 (x', y') = (15.7, 23.4)),而屏幕上只有整数坐标的像素。这时 Canvas 需要用「双线性插值」——采样目标点周围四个像素按距离加权混合出一个新颜色。结果是每一次任意角度旋转都会引入轻微的边缘柔化。观感上一次两次基本看不出,但反复来回旋转会越来越糊,最好一次到位。

「翻转 180°」和「水平翻转」的直觉陷阱

很多人以为「翻一下」都差不多,其实差得远。举个具体例子:一张写着「你好」的照片。

旋转 180°:整个图转半圈。「你好」两个字变成上下颠倒、左右也反着(像倒立看到的)。

水平翻转(镜像):只左右对调,上下不变。「你好」两个字仍然正着立着,但每个字都变成了镜像(像在镜子里看到的),阅读顺序从右往左。

垂直翻转:只上下对调,左右不变。字仍然从左往右读,但整个倒了过来。

实际用途也不同。翻拍反了的自拍要用水平翻转;从旁边给人递手机拍的照片颠倒了要用旋转 180°;做倒影素材要用垂直翻转。搞混就南辕北辙。

扫描件矫正倾斜的实战方法

用手机拍身份证、合同、书页,几乎不可能拍得完全水平——总会歪几度。任意角度旋转就是为了这类场景。方法:

1)导入图片,观察一条你知道应该是水平的直线(书页横线、合同签名线、身份证上下边框);

2)拉动角度滑块,从 0 开始一次调 1~3°,看这条线是否越来越接近水平;

3)大部分手机竖拍的倾斜在 ±5° 以内,横拍多在 ±3° 以内;

4)水平后四角会露出透明或白色三角,用 图片裁剪 内切一个矩形把空白切掉。

如果扫描的是文字资料且倾斜明显,可能还需要在旋转后跑一次 压缩 减小体积,或者用 调整尺寸 缩到 2000px 以内后再上传——政务/求职系统单张常有 2MB 或 5MB 的限制。

为什么这个工具不上传你的图片

旋转和翻转是最纯的几何变换:一次 ctx.rotate() 加一次 ctx.drawImage(),Canvas API 原生就能做。既不需要模型、也不需要外部资源,没有任何理由把你的图片传出去。证件照、合同扫描件、家人合影、私密聊天截图——这些恰恰是最常需要旋转、也最不该离开你电脑的东西。本站所有工具都遵循这个原则:压缩、格式转换、裁剪、打码、清除 EXIF 全部本地跑,关掉网络也能用。

接着可能要用的工具