6

我有一个 PDF 文档,但我必须在上面放上我自己的图像。这是一份官方文件,我必须将带有“示例”文本的图像应用于整个页面。

有没有办法在python中解决这个问题?

(文档中的文字是曲线)

4

2 回答 2

11

如果您来自 Google,PyPDF 已被PyPDF2取代。语法发生了一些变化。

import PyPDF2 as pypdf

with open("original.pdf", "rb") as inFile, open("overlay.pdf", "rb") as overlay:
    original = pypdf.PdfFileReader(inFile)
    background = original.getPage(0)
    foreground = pypdf.PdfFileReader(overlay).getPage(0)

    # merge the first two pages
    background.mergePage(foreground)

    # add all pages to a writer
    writer = pypdf.PdfFileWriter()
    for i in range(original.getNumPages()):
        page = original.getPage(i)
        writer.addPage(page)

    # write everything in the writer to a file
    with open("modified.pdf", "wb") as outFile:
        writer.write(outFile)
于 2014-07-15T21:29:05.787 回答
6

查看PyPDF。您可以使用类似以下代码的代码来应用叠加层:

page = PdfFileReader(file("document.pdf", "rb")).getPage(0)
overlay = PdfFileReader(file("overlay.pdf", "rb")).getPage(0)
page.mergePage(overlay)

将您想要的任何叠加层(包括“示例”)放入overlay.pdf. 就个人而言,我更喜欢 PDFTK,虽然它不是严格意义上的 Python,但可以从带有os.system(command).

于 2012-11-07T19:11:43.247 回答