首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
操作PDF介绍
打开与保存PDF文档
读取文档与文档尺寸
读取页面和保存页面
合并文档
修改PDF
旋转页面
缩放页面
裁剪页面
提取文本
提取图片
添加水印
查看元数据
更新元数据
加密文档
解密文档
Word转PDF
Excel转PDF
PPT转PDF
PDF转Word
当前位置:
首页>>
技术小册>>
Python与办公-玩转PDF
小册名称:Python与办公-玩转PDF
PageObject对象有一个rotate()方法可以用于对自身进行旋转,旋转角度取值是0、90、270、180等,即90的倍数,正数是顺时针,负数是逆时针。现在有一个需求是要把一个PDF文件的奇数页逆时针旋转90度,偶数页顺时针旋转90度。 我们可以使用rotate()方法旋转页面,所以这个问题的关键是怎么判断当前页面对应页数的奇偶呢?肯定是需要获取文档的总页数,之后遍历所有页面,把当前页数对2取余,结果为0则为偶数,否则是奇数。不过要注意,如果是使用range()方法生成下标,计算奇偶之前记得加上1,因为range()默认是从0开始的,代码如下: ```bash from PyPDF2 import PdfReader,PdfWriter reader = PdfReader("./pdf_ files/练习文档.pdf") writer = PdfWriter() for i in range(reader.getNumPages()): if (i + 1) % 2 == 0: page = reader.getPage(i).rotate(90) else: page = reader.getPage(i).rotate(-90) writer.addPage(page) with open("./pdf_ files/test.pdf","wb") as f: writer.write(f) ``` 既然讲到这里了,那就趁机再讲一下怎么知道某个PageObject对象对应的下标。PdfReader对象有一个get_page_number()方法,调用时只要把一个PageObject对象传进去就会返回该PageObject是第几页了,所以上面的旋转需求我们也可以这样写: ```bash from PyPDF2 import PdfReader,PdfWriter reader = PdfReader("./pdf_ files/练习文档.pdf") writer = PdfWriter() for page in reader.pages: page_num = reader.get_page_number(page) page = page.rotate(90) if (page_num + 1) % 2 == 0 else page. rotate(-90) writer.addPage(page) with open("./pdf_ files/test.pdf","wb") as f: writer.write(f) ```
上一篇:
修改PDF
下一篇:
缩放页面
该分类下的相关小册推荐:
Python合辑11-闭包函数
Python甚础Django与爬虫
Python合辑7-集合、列表与元组
Python3网络爬虫开发实战(上)
Python合辑8-变量和运算符
Python高并发编程与实战
Python编程轻松进阶(四)
Python高性能编程与实战
Python合辑5-格式化字符串
Python神经网络入门与实践
Python机器学习基础教程(下)
剑指Python(磨刀不误砍柴工)