0

使用pdfrw我正在尝试合并两个 pdf 以将背景(保存为 pdf 的枕头图像)添加到由reportlab生成的现有 pdf 中。控制哪个背景出现在哪个页面上似乎更容易。我一直在关注 pdfrw 提供的名为fancy-watermark的示例,并对其进行了如下调整,以包括在合并之前对背景进行重新缩放:

composed = PdfWriter()
published = PdfReader(published_file) #pdf generated by reportlab
background = PdfReader(the_background).pages[0] #pdf background generated by pillow

for i, page in enumerate(published.pages):
    page_mbox = tuple(float(x) for x in page.MediaBox)
    background_mbox = tuple(float(x) for x in background.MediaBox)
    background.scale(1. * (page_mbox[2] - page_mbox[0]) / (background_mbox[2] - background_mbox[0]))
    background.y += page_mbox[3] - background_mbox[3]
    new_page = PageMerge(background).add(page)
    composed.addpage(new_page.render())

但是,该方法在背景 pdf 上scale返回 a :TypeError

TypeError:“NoneType”对象不可调用

4

0 回答 0