首页 > 解决方案 > Python 不使用 pyPDF2 打印 PDF

问题描述

我尝试打印 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())

但我只得到很多空白,没有错误消息。会不会是 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)

标签: pythonpdfpypdf2python-pdfreader

解决方案


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


推荐阅读