from PyPDF2 import PdfReader, PdfWriter
def compress_pdf(input_pdf_path, output_pdf_path):
# 打开原始PDF文件
reader = PdfReader(input_pdf_path)
writer = PdfWriter()
# 遍历每一页并添加到新的PDF中
for page_num in range(len(reader.pages)):
page = reader.pages[page_num]
page.compress_content_streams() # 压缩页面内容流
writer.add_page(page)
# 写入压缩后的PDF文件
with open(output_pdf_path, "wb") as output_file:
writer.write(output_file)
# 示例调用
compress_pdf("input.pdf", "output_compressed.pdf")
PyPDF2 库中的 PdfReader 和 PdfWriter 类来读取和写入 PDF 文件。compress_pdf:PdfReader 打开输入的 PDF 文件。PdfWriter 创建一个新的 PDF 写入对象。reader.pages 获取所有页面,并逐页处理。page.compress_content_streams() 方法压缩页面内容流。writer 对象中。writer.write() 方法将压缩后的内容写入到指定的输出文件。PyPDF2 库,可以使用 pip install PyPDF2 安装。上一篇:python中list函数
下一篇:python 合并数组
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站