【问题标题】:PDF file generated with pyPdf won't open使用 pyPdf 生成的 PDF 文件无法打开
【发布时间】:2016-03-25 08:29:52
【问题描述】:

我正在使用 python 中的 pyPdf 库生成 PDF 文件。

在我生成文件并尝试打开它后,我会收到以下错误:不支持文件类型纯文本文档(文本/纯文本)

如果我用 .txt 重命名文件并打开它,它将工作并显示我在文件中写入的内容。

这是代码:

from pyPdf import PdfFileWriter
output = PdfFileWriter()
outputStream = file("/home/documet_test.pdf","wb")
outputStream.write("Hello world")
outputStream.close()

我错过了什么?

【问题讨论】:

  • pdf != 文本文件。 outputStream.write("Hello world") -> output.write(outputStream)
  • @falsetru 现在我可以打开 pdf,但内容是空的
  • pyPdf 似乎不适合从头开始生成 pdf。它需要另一个pdf来制作页面。您可能需要找到另一个库(如 reportlab)从头开始创建 pdf。
  • 如果您不发布示例 PDF 文档,很难判断它可能有什么问题。
  • 我只写了一些字符串,就像示例中的“hello world”一样。我需要从头开始生成它,所以我可能需要使用 reportlab

标签: python pdf pypdf


【解决方案1】:

使用reportlab库可以解决问题:

from reportlab.pdfgen import canvas

c = canvas.Canvas("hello.pdf") 
c.drawString(100,750,"Welcome to Reportlab!")
c.save()

【讨论】:

猜你喜欢
  • 2014-01-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-01
相关资源
最近更新 更多