PDF 旋转
90° / 180° / 270° 旋转 · 修正扫描方向 · 浏览器本地
单页/全部 90/180/270
90° / 180° / 270° 旋转 · 修正扫描方向 · 浏览器本地
了解工具定位 · 使用场景 · 对比优势
将 PDF 页面按 90°、180° 或 270° 旋转,支持单页调整或一键旋转全部页面。适合扫描件方向错乱、电子文档排版校正、打印前统一页面角度。上传 PDF 后由服务端处理,文件在任务完成后自动删除,不保留副本。
行政人员批量处理扫描仪导入的合同、发票或报名表时,常遇到部分页面方向颠倒(如扫描仪自动进纸时混入倒置页)。使用本工具可一次选中所有倒置页面,统一旋转 180°,无需逐页手动调整,5 秒完成 50 页文件的矫正,避免打印或归档时反复翻页的尴尬。
学生或职场人用手机拍摄白板笔记、黑板板书或纸质资料时,因拍摄角度不同,照片可能横竖混排。上传到本工具后,可单独将横向照片旋转 90° 或 270° 对齐,再合并导出为统一方向的 PDF,方便在平板或电脑上连续阅读,省去手动旋转每张图片的重复操作。
打印双面小册子或装订文档时,奇数页和偶数页可能需要不同的旋转方向(如左侧装订的文档,偶数页需旋转 180° 以保持阅读方向一致)。本工具支持按页范围或奇偶页批量旋转,一次性完成排版调整,避免因方向错误导致打印后重新装订的纸张浪费。
研究人员处理古籍扫描件或竖排排版的 PDF 时,部分页面可能因扫描方向错误导致文字倒置。利用本工具对特定页面执行 180° 旋转,无需重新扫描即可修正方向,保持整份文档的阅读连贯性,减少后期在阅读器内反复手动翻页的干扰。
从不同渠道收集的 PDF 片段(如邮件附件、网页打印、截图转 PDF)方向参差不齐,合并前需统一。本工具提供 90°/180°/270° 三种旋转选项,可对每个片段单独调整或全选统一旋转,确保合并后的文档所有页面方向一致,避免阅读时频繁扭头或旋转设备。
| 维度 | 本工具 | 竞品 A (iLovePDF) | 传统方法 (Adobe Acrobat Pro) |
|---|---|---|---|
| 数据隐私 | 纯浏览器处理,文件不上传服务器 | 文件需上传至云端处理 | 文件完全本地处理,无网络传输 |
| 处理速度 | 1 秒内完成(中等大小文件) | 3-10 秒(取决于文件大小和服务器负载) | 5-30 秒(取决于软件启动和文件加载速度) |
| 离线可用 | 完全离线,无需网络 | 必须联网 | 完全离线 |
| 文件大小限制 | 取决于浏览器内存(通常 100MB 以内稳定) | 免费版 10MB,付费版 2GB | 无限制(取决于本地硬件) |
| 收费模式 | 完全免费 | 免费版有功能限制,付费版 $7/月 | 付费软件(一次性购买或订阅) |
| 操作复杂度 | 极简:拖拽-选择角度-下载 | 中等:需上传-等待-下载 | 复杂:需安装软件-打开文件-导出-保存 |
| 批量处理 | 支持(全选页面统一旋转) | 支持(免费版有限制) | 支持(需手动选择页面范围) |
上手步骤 · 输入输出 · 避坑提示
| 输入 | 输出 | 说明 |
|---|---|---|
| 选择:全部页面 | 旋转角度:90° | PDF 所有页面顺时针旋转 90° 后下载 | 典型场景:扫描件方向统一校正 |
| 选择:第 3 页 | 旋转角度:180° | 仅第 3 页旋转 180° 后下载 | 典型场景:单页倒置修正 |
| 选择:全部页面 | 旋转角度:270° | PDF 所有页面顺时针旋转 270°(即逆时针 90°)后下载 | 典型场景:手机拍照竖版转横版 |
| 选择:第 1、5、9 页 | 旋转角度:90° | 仅第 1、5、9 页旋转 90° 后下载 | 边界 case:非连续多页选择 |
| 选择:全部页面 | 旋转角度:0° | 原 PDF 直接下载(无旋转) | 边界 case:0° 旋转不改变内容 |
| 选择:第 100 页 | 旋转角度:90°(PDF 共 50 页) | 提示「所选页码超出文档范围」,不处理 | 易错 case:页码超出总页数 |
| 选择:第 2 页 | 旋转角度:90°(PDF 为加密文件) | 提示「文件已加密,请先解密」,不处理 | 易错 case:加密 PDF 无法直接旋转 |
想将第3页移到第1页,选择了“旋转90度”旋转改变的是页面内容的朝向(上下/左右),不改变页面在文档中的排列顺序PDF旋转只修改页面内容的视觉方向,不改变页面索引。调整页面顺序需使用PDF合并/拆分工具。
对一个页面连续执行4次“旋转90度”,期望恢复原样旋转90度×4次 = 旋转360度,页面内容方向恢复,但PDF内部元数据会累积4个旋转标记工具每次旋转都会在PDF内部写入新的旋转标记,多次旋转可能导致某些阅读器渲染异常。建议直接使用“旋转180度”或“旋转270度”单次完成。
旋转A4纵向页面后,担心内容被裁掉旋转仅改变内容方向,页面尺寸(如A4的210×297mm)保持不变,内容完整保留PDF旋转是元数据操作,不重新渲染页面内容。页面框(MediaBox/CropBox)尺寸不变,只是旋转矩阵被应用。
扫描件文字是倒置的,旋转180度后文字方向正确但依然模糊旋转只改变方向,不提升图像质量。模糊的扫描件需先用OCR或图像增强工具处理扫描件本质是嵌入的图像页面,旋转操作不涉及像素级重采样,无法修复原始扫描质量缺陷。
想只旋转第5页,却选择了“全部页面”并上传文件先选择“单页”模式,再输入页码5,最后上传文件两种模式在UI上通常并列显示,选错会导致所有页面被旋转,需要重新上传原始文件才能恢复。
旋转后直接复制文字,发现文字依然是旋转前的方向旋转只改变视觉呈现,PDF中的文本流(Text Stream)和字符编码不变PDF文本层与渲染层分离。旋转操作修改的是页面变换矩阵(CM),不重排文本对象,因此复制文本时仍按原始逻辑顺序输出。
上传加密的PDF文件,工具提示“无法处理”先使用PDF密码移除工具解密,再上传进行旋转操作大多数在线PDF旋转工具无法解析加密PDF的页面树结构,需要先解除文档打开密码或权限密码。
在浏览器中打开PDF,按Ctrl+P选择“横向”打印来模拟旋转使用本工具直接旋转PDF文件,保存为新的PDF文件浏览器打印的“横向”仅改变打印输出方向,不修改原始PDF文件。下次打开文件依然保持原方向。
公式推导 · 流程图解 · 依据出处
P' = R(P, θ)
P — 原始 PDF 页面(像素矩阵)θ — 旋转角度:90°、180°、270°P' — 旋转后的 PDF 页面用户上传一份包含 3 页的 PDF,选择「全部页面旋转 90°」。工具对每页执行 R(P, 90°):将原页面宽高互换,像素矩阵顺时针旋转 90 度。第 1 页原为纵向 A4(595×842 点),旋转后变为横向(842×595 点)。第 2、3 页同理。最终输出 PDF 的 3 页均顺时针旋转 90°。
适用于 PDF 页面级旋转(单页/全部),角度仅限 90°、180°、270°。不支持任意角度(如 45°)旋转,不支持页面裁剪或缩放。基于 PDF 规范(ISO 32000-1)的 /Rotate 条目实现。
3 种主流语言 · 复制即用
import PyPDF2
from PyPDF2 import PdfReader, PdfWriter
# 打开 PDF,旋转所有页面 90 度
reader = PdfReader("input.pdf")
writer = PdfWriter()
for page in reader.pages:
page.rotate(90) # 顺时针旋转 90 度
writer.add_page(page)
with open("output.pdf", "wb") as f:
writer.write(f)
print("所有页面已旋转 90 度,保存为 output.pdf")package main
import (
"fmt"
"github.com/pdfcpu/pdfcpu/pkg/api"
"github.com/pdfcpu/pdfcpu/pkg/pdfcpu"
)
func main() {
// 旋转所有页面 90 度(顺时针)
conf := pdfcpu.NewDefaultConfiguration()
if err := api.RotateFile("input.pdf", "output.pdf", 90, nil, conf); err != nil {
fmt.Println("旋转失败:", err)
return
}
fmt.Println("所有页面已旋转 90 度,保存为 output.pdf")
}const { PDFDocument } = require('pdf-lib');
const fs = require('fs');
async function rotatePdf() {
const pdfBytes = fs.readFileSync('input.pdf');
const pdfDoc = await PDFDocument.load(pdfBytes);
const pages = pdfDoc.getPages();
pages.forEach(page => {
page.setRotation({ angle: 90 }); // 顺时针旋转 90 度
});
const rotatedBytes = await pdfDoc.save();
fs.writeFileSync('output.pdf', rotatedBytes);
console.log('所有页面已旋转 90 度,保存为 output.pdf');
}
rotatePdf().catch(console.error);8 个高频疑问