使用python将多页pdf文件拆分为多个pdf文件?

2024-05-16 01:47:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我想采取一个多页的pdf文件和创建单独的pdf文件每页。

我下载了reportlab并浏览了文档,但它似乎是针对pdf生成的。我还没有看到任何关于处理PDF文件本身的东西。

在python中有一种简单的方法可以做到这一点吗?


Tags: 文件方法文档pdf每页reportlab
2条回答

我错过了一个解决方案,您将PDF分成两部分,由所有页面组成,因此如果有人在寻找相同的解决方案,我会附加我的解决方案:

from PyPDF2 import PdfFileWriter, PdfFileReader

def split_pdf_to_two(filename,page_number):
    pdf_reader = PdfFileReader(open(filename, "rb"))
    try:
        assert page_number < pdf_reader.numPages
        pdf_writer1 = PdfFileWriter()
        pdf_writer2 = PdfFileWriter()

        for page in range(page_number):
            pdf_writer1.addPage(pdf_reader.getPage(page))

        for page in range(page_number,pdf_reader.getNumPages()):
            pdf_writer2.addPage(pdf_reader.getPage(page))

        with open("part1.pdf", 'wb') as file1:
            pdf_writer1.write(file1)

        with open("part2.pdf", 'wb') as file2:
            pdf_writer2.write(file2)

    except AssertionError as e:
        print("Error: The PDF you are cutting has less pages than you want to cut!")
from PyPDF2 import PdfFileWriter, PdfFileReader

inputpdf = PdfFileReader(open("document.pdf", "rb"))

for i in range(inputpdf.numPages):
    output = PdfFileWriter()
    output.addPage(inputpdf.getPage(i))
    with open("document-page%s.pdf" % i, "wb") as outputStream:
        output.write(outputStream)

等等

相关问题 更多 >