使用pyPdf在Python中裁剪页面

杰克·奥·琼斯

我正在编写一个脚本,以从PDF中提取一些数据。PDF本身很复杂,因为它具有多个列。因此,我想出了应该裁剪每列并将其连接起来以创建新的PDF的方法,该PDF更适合使用pyPdf进行解析。这是我的代码:

for i in range(numPages):
    page1 = input1.getPage(i)
    page1.trimBox.lowerLeft=(0,550)
    page1.trimBox.upperRight = (480, 842)
    page1.cropBox.lowerLeft = (0, 550)
    page1.cropBox.upperRight = (480, 842)
    output.addPage(page1)
    page2= input2.getPage(i)
    print page1.mediaBox.getUpperRight_x(), page1.mediaBox.getUpperRight_y()
    page2.trimBox.lowerLeft=(0,280)
    page2.trimBox.upperRight = (480, 550)
    page2.cropBox.lowerLeft = (0, 280)
    page2.cropBox.upperRight = (480, 550)
    output.addPage(page2)
    page3 = input3.getPage(i)
    page3.trimBox.lowerLeft=(0,0)
    page3.trimBox.upperRight = (480, 280)
    page3.cropBox.lowerLeft = (0, 0)
    page3.cropBox.upperRight = (480, 280)
    output.addPage(page3)

outputStream = file("out.pdf", "wb")
output.write(outputStream)
outputStream.close()

然后,我将此PDF发送到PHP服务器以对其进行解析并获取文本。没想到,那没有帮助。cropBox原来是在更改PDF的可见部分。其他部分在那里,但它们根本无法查看。当我使用PHP处理新PDF时,得到了相同的结果。我的问题是:有没有一种方法可以使cropBox真正裁剪框并忽略PDF页面的其余部分?

杰克·奥·琼斯

我在Python中尝试了多个其他库,但它们没有帮助。后来,我偶然发现了pdfBox,它被证明是一个非常有用的库。在文本提取方面,比PDFMiner和pyPdf好得多。我可以使用具有高度和宽度的矩形的x和y位置提取文本,唯一的缺点是我没有找到它的Python包装器,所以我不得不用Java编写应用程序。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用pyPdf在Python中裁剪页面

来自分类Dev

使用 PyPDF2 合并多个 pdf 文档中的页面

来自分类Dev

如何使用PyPDF2在Python 3中以单个字符串的形式从PDF检索所有页面

来自分类Dev

在python中裁剪图像

来自分类Dev

在python中裁剪视频

来自分类Dev

如何使用Ghostscript裁剪特定页面的裁剪框数组来裁剪多页PDF

来自分类Dev

python-pypdf根据页面范围列表拆分pdf

来自分类Dev

在OpenCV Python中裁剪矩形

来自分类Dev

使用OPENCV python裁剪脸部

来自分类Dev

使用 PyPDF 在页脚中居中页码

来自分类Dev

如何在Python 3中使用PyPDF2计算边界框

来自分类Dev

如何使用Python的PyPDF2 lib从PDF文件中删除水印

来自分类Dev

PDF文档页面中的选择性裁剪

来自分类Dev

复制时页面在PDFBox中的新文档中被裁剪

来自分类Dev

在 Acrobat 中裁剪和重新格式化 PDF 页面

来自分类Dev

不要裁剪ViewPager页面

来自分类Dev

批量裁剪PDF页面?

来自分类Dev

在Python OpenCV中制作裁剪帧的视频

来自分类Dev

裁剪图像中的背景-NumPy / Python

来自分类Dev

如何使用python裁剪stl文件

来自分类Dev

使用opencv python从图像裁剪圆

来自分类Dev

如何使用 Python PIL 或 CV 裁剪图像?

来自分类Dev

如何使用opencv python从底部裁剪图像

来自分类Dev

在Android中裁剪图像而不使用Intent

来自分类Dev

使用Libgdx从图像中裁剪图像

来自分类Dev

如何使用ffmpeg在终端中裁剪视频

来自分类Dev

如何使用文件中的列表边界框位置裁剪多幅图像(python)?

来自分类Dev

使用 Python 在 3D 数组中裁剪 3D 数组的最快方法

来自分类Dev

使用python从二进制图像中裁剪感兴趣的区域