我正在使用Camelot-py从多个PDF中读取和提取属性。我使用table_areas提取一些属性,由于某些形式之间的X或Y坐标存在偏差,我在设置正确的区域时遇到了困难。有些表格(样本1)的顶部空白最少,而另一些表格(样本2)的空白较多。这会使y坐标偏移10-15
是否可以在运行时裁剪或统一它们?
答案 0 :(得分:0)
我认为解决方案使用的是Find PDF Dimensions with Camelot中指定的table_regions参数。
在https://camelot-py.readthedocs.io/en/master/user/advanced.html#specify-table-regions
中了解有关table_regions的更多信息。答案 1 :(得分:0)
为此功能,您可以使用pdfCropMargins来裁剪PDF文件的空白。它是作为命令行应用程序实现的,可以从Python调用它:
import subprocess
filename = "test.pdf"
cmd = f"pdf-crop-margins -v -s -u {filename}"
proc = subprocess.Popen(cmd.split())
proc.wait()
该命令显示详细输出,强制所有页面相同 大小(-s),然后以相同的数量(-u)裁剪每页以获得统一 外观,保留默认的10%的边距。