1. 产品
  2.   PDF格式
  3.   Python
  4.   Pdfrw
 
  

用于转换 PDF 文件的开源 Python 库

免费的 Python API 允许开发人员导出、旋转、合并和连接 PDF 文件,从 PDF 中提取数据和元素。

pdfrw 是一个开源的纯 Python 库,让软件开发人员无需安装任何外部特殊软件即可读写 PDF 文件。 pdfrw 编程库使用起来非常简单,而且源代码有很好的文档记录,非常简单且易于理解。该库包括对 PDF 中文本字符串的适当 Unicode 支持以及最快的纯 Python PDF 解析器。

pdfrw 库包括对几个重要的 PDF 操作的支持,例如合并 PDF、修改元数据、将多个 PDF 连接在一起、提取图像、PDF 打印、旋转 PDF 页面、创建新 PDF、添加水印 PDF 图像等等。

.

Previous Next

pdfrw 入门

pdfrw 需要 Python 2.6、2.7、3.3、3.4、3.5 和 3.6。您可以使用 pip 安装 pdfrw。请使用以下命令进行安装。

通过 pip 安装 pdfrw

 python -m pip install pdfrw  

通过 Python 库创建 PDF 文档

pdfrw 库为软件开发人员提供了在他们自己的 Python 应用程序中创建 PDF 文档的能力,只需几行代码。该库还支持访问和修改现有 PDF 文件。您可以轻松地将新页面以及图形组件或文本元素插入到现有 PDF 中。 pdfrw 库支持查找您读入的 PDF 文件中的页面,并将一组页面写回新的 PDF 文件。

通过 Python 创建和更改 PDF 文档

 // PDF Documents Creation 
  import sys
  import os
  from pdfrw import PdfReader, PdfWriter
  inpfn, = sys.argv[1:]
  outfn = 'alter.' + os.path.basename(inpfn)
  trailer = PdfReader(inpfn)
  trailer.Info.Title = 'My New Title Goes Here'
  PdfWriter(outfn, trailer=trailer).write() 

通过 Python 读取 PDF 文件

pdfrw 库使软件开发人员能够轻松访问和阅读 Python 应用程序中 PDF 文档的不同部分。它可以轻松访问整个 PDF 文档。该库支持检索文件信息、大小等。它创建了一个名为 pages 的特殊属性,允许用户列出 PDF 文档的所有页面。它允许您提取文档信息对象,您可以使用该对象提取作者、标题等信息。

通过 Python 访问和读取 PDF 文件

 // Reading PDF Files
  from pdfrw import pdfreader
  def get_pdf_info(path):
    pdf = pdfreader(path)
    print(pdf.keys())
    print(pdf.info)
    print(pdf.root.keys())
    print('pdf has {} pages'.format(len(pdf.pages)))
  if __name__ == '__main__':
    get_pdf_info('w9.pdf')

添加或修改元数据

pdfrw 允许软件开发人员在他们自己的 Python 应用程序中添加或修改 PDF 文件的元数据。您可以更改 PDF 中的单个元数据项,将结果写入新的 PDF,也可以包含多个文件,并在将一些无意义的元数据添加到输出 PDF 文件后将它们连接起来。

通过 Python 修改 PDF 元数据

 // Modifying PDF Metadata
  import sys
  import os
  from pdfrw import PdfReader, PdfWriter
  inpfn, = sys.argv[1:]
  outfn = 'alter.' + os.path.basename(inpfn)
  trailer = PdfReader(inpfn)
  trailer.Info.Title = 'My New Title Goes Here'
  PdfWriter(outfn, trailer=trailer).write() 

拆分 PDF 文档

pdfrw 允许软件开发人员在其应用程序中以编程方式拆分 PDF 文档文档。用户可能需要提取 PDF 书籍的特定部分或将其分成多个 PDF,而不是将它们存储在一个文件中。使用 pdfrw 库非常简单,您只需要提供输入 PDF 文件路径、要提取的页数和输出路径。

通过 Python 将 PDF 文件拆分为多个 PDF

 // Splitting PDF file into multiple pdfs
  from pdfrw import pdfreader, pdfwriter
  def split(path, number_of_pages, output):
    pdf_obj = pdfreader(path)
    total_pages = len(pdf_obj.pages)
    writer = pdfwriter()
    for page in range(number_of_pages):
      if page <= total_pages:
        writer.addpage(pdf_obj.pages[page])
    writer.write(output)
  if __name__ == '__main__':
    split('reportlab-sample.pdf', 10, 'subset.pdf')
 中国人