如何通过Python代码旋转PDF页面

前言

日常处理 PDF 文档时,我们时常会遇到页面颠倒、很难正常阅读或打印的情况。 在这种情况下,我们可以通过旋转页面来调整文档的方向。旋转时,也可以根据具体情况,选择顺时针或逆时针旋转特定的角度,以使页面内容更加清晰可读或适应特定的显示需求。这一功能可以通过PDF处理工具或者库来实现。这里我将介绍如何使用PDF库在Python平台上旋转文档页面。

所需工具:

Spire.PDF for Python

这个程序库支持在Python平台上创建,编辑或者转换PDF文档。目前官方页面上的代码教程还不算完善,如果需要其他代码示例的话,建议直接下载产品查看。

准备工作:

首先,我们需要在Visual Studio Code中安装需要使用到的库和plum-dispatch v1.7.4。在这之前请先确认是否已经安装Python。若已安装,可以直接进行以下步骤:

  • 打开VS Code,在中搜索到Python并安装。
  • 依次选择Explorer - NO FOLRDER OPENED- Open Folder
  • 选择一个文件夹,然后在里面新建一个" .py "文件。
  • 创建后,点击Terminal- New Terminal
  • 输入下面的命令即可成功安装。

pip install Spire.PDF

参考代码

复制代码
from spire.pdf.common import *
from spire.pdf import *

#创建PdfDocument对象 
pdf = PdfDocument()

#读取PDF文档
pdf.LoadFromFile("C:/Users/Administrator/Desktop/Sample.pdf")

#遍历文档中的所有页面
for i in range(pdf.Pages.Count):
    page = pdf.Pages.get_Item(i)

    #获取原有页面的旋转角度
    rotation = int(page.Rotation.value)

    #在原有基础上顺时针旋转页面180度
    rotation += int(PdfPageRotateAngle.RotateAngle180.value)
    page.Rotation = PdfPageRotateAngle(rotation)

#保存结果文档
pdf.SaveToFile("C:/Users/Administrator/Desktop/Result.pdf") 
pdf.Close()

代码说明

  1. 上述代码中,首先创建一个 PdfDocument 对象并加载一个PDF文档。
  2. 然后循环遍历所有页面。
  3. 通过 PdfPageBase.Rotation.value 属性获取页面的原始旋转角度。
  4. 在原有基础上更改角度并应用新的旋转角度到所有页面中。
  5. 最后,保存结果文档。

运行以上代码的话,所有页面都将被旋转。

如果您只想旋转特定页面,则可以先获取指定页面,再更改旋转角度。

此时就不需要循环遍历所有页面。下面是参考代码片段(这里的参数从0开始):

复制代码
#获取指定页面

page = pdf.Pages[0]

效果图:

相关推荐
姓学名生7 分钟前
李沐vscode配置+github管理+FFmpeg视频搬运+百度API添加翻译字幕
vscode·python·深度学习·ffmpeg·github·视频
黑客-雨18 分钟前
从零开始:如何用Python训练一个AI模型(超详细教程)非常详细收藏我这一篇就够了!
开发语言·人工智能·python·大模型·ai产品经理·大模型学习·大模型入门
孤独且没人爱的纸鹤32 分钟前
【机器学习】深入无监督学习分裂型层次聚类的原理、算法结构与数学基础全方位解读,深度揭示其如何在数据空间中构建层次化聚类结构
人工智能·python·深度学习·机器学习·支持向量机·ai·聚类
l1x1n035 分钟前
No.35 笔记 | Python学习之旅:基础语法与实践作业总结
笔记·python·学习
是Dream呀1 小时前
Python从0到100(八十五):神经网络-使用迁移学习完成猫狗分类
python·神经网络·迁移学习
小林熬夜学编程1 小时前
【Python】第三弹---编程基础进阶:掌握输入输出与运算符的全面指南
开发语言·python·算法
hunter2062063 小时前
用opencv生成视频流,然后用rtsp进行拉流显示
人工智能·python·opencv
Johaden5 小时前
EXCEL+Python搞定数据处理(第一部分:Python入门-第2章:开发环境)
开发语言·vscode·python·conda·excel
小虎牙^O^6 小时前
2024春秋杯密码题第一、二天WP
python·密码学
梦魇梦狸º7 小时前
mac 配置 python 环境变量
chrome·python·macos