Python 不使用 pyPDF2 打印 PDF

Python does not print PDF with pyPDF2

我尝试打印 pdf 文档的页面:

import PyPDF2
FILE_PATH = 'my.pdf'
with open(FILE_PATH, mode='rb') as f:
    reader = PyPDF2.PdfFileReader(f)
    page = reader.getPage(0) # I tried also other pages e.g 1,2,..
    print(page.extractText())

但我只得到很多空白 space 并且没有错误消息。难道是PyPDF2不支持这个pdf版本(my.pdf)?

这解决了(打印文档的所有页面)。谢谢

from pdfreader import SimplePDFViewer
fd = open("my.pdf", "rb")
viewer = SimplePDFViewer(fd)
for i in range(1,16): # need range from 1 - max number of pages +1
    viewer.navigate(i)
    viewer.render()
    page_1_content=viewer.canvas.text_content
    page_1_text = "".join(viewer.canvas.strings)
    print (page_1_text)

如果它是空白的,要么是正在读取 PDF,要么是 pypdf 无法读取它的格式,所以它只是输出空白。也许放入绝对文件路径而不是相对文件路径。如果所有其他方法都失败了,请尝试使用不同的 PDF,如果有一个版本可以工作而您的版本不行,您可能需要将您的版本转换为该工作类型。

尝试pdfreader

from pdfreader import SimplePDFViewer

fd = open("my.pdf", "rb")
viewer = SimplePDFViewer(fd)
viewer.render()

page_0_content=viewer.canvas.text_content
page_0_text = "".join(viewer.canvas.strings)