跳到正文

旋转和翻转图片

90°旋转和镜像翻转,实时预览——点两下就能修正横躺的扫描件或镜像的自拍,不存储任何文件。

  • 绝不存储
  • 无需排队,无需等待
  • 无需注册,无水印

使用方法

1

添加图片

拖放一张图片或一整批。

2

旋转或翻转

以90°为单位向左/向右旋转,水平或垂直翻转——预览即时更新。

3

下载

可逐个保存,也可打包成ZIP下载;每个文件都会应用相同的变换。

为什么90°旋转没有损失,其他角度却有

90°旋转或镜像会把每个像素移到另一个像素原来的位置上。没有取平均,没有凭空生成,结果包含完全相同的像素值,只是排列不同——在写入文件之前,这一操作在数学上是无损的。其他角度则不然:为了拉直地平线把图片旋转两度,意味着每个新像素都落在四个旧像素之间,需要由它们计算得出,这会让整张图片略微变软,还会在四角留下楔形空白,必须裁掉或填充。那是另一项需要专门处理的工作,不是本页面要做的事。

照片看起来横躺还有第二个原因,而且与像素毫无关系。手机和相机通常按传感器自身的方向存储图片,并在文件中用方向标记记录应该以哪边朝上显示。读取该标记的软件会正确显示;忽略它的软件则会把同一个文件显示成旋转后的样子——这就是为什么一张照片在您手机上是正的,通过邮件发送或发布后却横了过来。在这里旋转会把方向直接写进像素本身,所以无论有没有软件读取该标记,文件都是正的。如果某张图片在某个特定程序里总是显示错误,这就是解决办法。

镜像是人们用得较少、却更容易判断失误的操作。水平翻转用在人像或抽象图形上没问题,但只要画面中有文字、钟面、车牌、路牌或Logo,立刻就会出错——即使看的人说不出原因,也会觉得是反的。它真正有用的地方是修正自拍,大多数手机摄像头已经替您把自拍镜像过了。

文件以原始格式写回。对PNG来说,全程无损;对JPG来说,重新编码是第二代压缩,在合理画质下看不出来,但确实存在。元数据——包括可能正是问题根源的方向标记——在重写后不会保留。

如果您需要的是别的

对JPG来说,浏览器之外有一种绝对更好的方法。jpegtran -rotate 90 -copy all in.jpg out.jpg通过重新排列压缩后的数据块来旋转图片,完全不需要解码,所以结果的画质与原图逐位相同——没有任何第二代损失。exiftran -a可以对整个文件夹做同样的处理,并读取每个文件自己的方向标记来判断该往哪个方向转。

如果图片需要的是拉直而不是旋转,那这个工具就不合适,本页面也如实说明。magick in.jpg -deskew 40% out.jpg能找出扫描页面的主要倾斜角度并加以校正,任何照片编辑软件都能做任意角度旋转并裁剪。对于一叠歪斜的扫描件,unpaper正是为此而写的,而且免费。

常见问题

为什么我的照片一开始就是横躺的?

相机把方向记录为EXIF标记,而不是真正旋转像素。忽略这个标记的软件就会把照片显示成横躺的。本工具旋转的是实际像素,所有看图软件都会正确显示。

旋转会损失画质吗?

以90°为单位旋转只是移动像素,不做重采样——没有任何损失。只有最后的JPG重新编码会有影响,且以最高画质进行。

翻转还是旋转——我需要哪个?

旋转就像在桌上转动一张纸。翻转则是镜像——前置摄像头自拍里文字左右颠倒时,用它来修正。

能把一整批图片按同样方式旋转吗?

可以——设置一次旋转,批次中的每个文件都会应用。非常适合一叠横躺的扫描件。

我的图片会被存储吗?

不会——任何环节都不会存储任何文件。

小贴士: 任意角度旋转(把地平线拉直)是另一回事——本工具只做精确的90°旋转和镜像,绝不会让图片变模糊。

把这个工具放到您的网站上

博客、课程页面或帮助文章均可免费使用。粘贴一段代码,访客就能直接在您的页面上使用。