在当今世界,PDF 文件已成为共享和存储信息的重要组成部分。然而,有时我们需要裁剪 PDF 文件的某些部分以提取相关信息。手动裁剪 PDF 文件可能是一项繁琐且耗时的任务。幸运的是,Pdfplumber 是一个 Python 库,其他库提供了一种高效便捷的裁剪 PDF 的方法。
在本文中,我们将探讨如何使用 Pdfplumber 裁剪 PDF 文件。我们将逐步探索如何进行裁剪以从 PDF 中分割您想要的区域或部分。
使用 pip 安装 Pdfplumber:
pip 安装 pdfplumber
从文件路径或文件中读取您的 PDF 文件:
import pdfplumber
PDF_FILE = "your_pdf_file"
# 从文件路径
pdf = pdfplumber. open (PDF_FILE)
# 或者您可以打开文件并将二进制文件传递给 pdfplumber
with open (PDF_FILE) as pdf_file:
pdf = pdfplumber. 打开(pdf_文件)
开始裁剪您的 PDF:
要裁剪 PDF,您需要一个四元组(x0、顶部、x1、底部)的边界框:
- x0: 裁剪矩形左侧与页面左侧的距离。
- top: 裁剪矩形顶部与页面顶部的距离。
- x1: 裁剪矩形右侧与页面左侧的距离。
- bottom: 裁剪矩形底部与页面顶部的距离。
# 选择要裁剪的页面
pdf_page = pdf.pages[page_idx]
# 指定要裁剪的边界框 bounding_box
= (x0, top, x1, bottom)
# 通过在所选页面上应用裁剪功能进行裁剪
cropped_pdf = pdf_page.crop(bounding_box , relative= False , strict= True )
# 从裁剪后的
打印中提取文本(cropped_pdf.extract_text())
请注意,裁剪后的页面会保留至少部分落在边界框内的对象。如果对象仅部分落在框内,则会对其尺寸进行切片以适合边界框。
如果relative=True,边界框计算为距页面边界框左上角的偏移量,而不是绝对定位。
当strict=True(默认)时,裁剪的边界框必须完全落在页面的边界框内。
您可以使用另一个类似于 的.within_bbox 函数,但只保留 完全落在边界框内.crop的对象。**
另一个.outside_bbox类似于.cropand的函数,但只保留完全落在边界框之外.within_bbox的对象。