3

在发布此内容之前,我已经广泛搜索了 stackoverflow,并且无法在 camelot 页面尺寸上找到任何内容。有这个问题,它建议使用table_region但不能解决 OP 的问题或我的问题。不幸的是,我无法评论跟进 OP,看看他们是否找到了解决方案。

我正在尝试做的事情:

我正在使用 Camelot 来识别表格(显然)。有时,当我知道可能包含感兴趣表格的页面区域时,我只想在该区域中进行搜索。这很容易使用camelot.read_pdf()'s table_regionkwarg 完成——我只需要提供一对坐标供 Camelot 搜索。

问题是,我使用 PyMuPDF 获得这些坐标,所以它们在 PyMuPDF 的坐标系中。我已经想出了如何翻译这些坐标,但我错过了来自 Camelot 的一个关键信息——页面的尺寸。这些值很容易在 PyMuPDF(Page 类.bound()属性)中获得,我需要 Camelot 等价物。如果有人认为可能有其他选择,我可以在这里提供代数的进一步解释

到目前为止我所尝试的

我阅读了文档。由于文档中的这一行,我想知道这是否可以提供一种获取尺寸的方法:“使用 Lattice 时可能会出现未检测到较小线条的情况。计算检测到的最小线条的大小通过将 PDF 页面的尺寸与称为 的比例因子相除line_scale。默认情况下,其值为 15"

我对替代方案持开放态度,基本上我要么想检查页面的区域是否包含表格(在 PyMuPDF 坐标系中描述的区域,对于 pdf 页面,尺寸通常为(612、792),原点位于顶部左角。camelot 的原点在左下角)或者页面上的任何表格都在给定区域中,如果这有意义的话。

4

1 回答 1

3

尝试以下代码,看看它是否为您提供所需的尺寸:

from camelot import utils
layout, dim = utils.get_page_layout(file_name)
于 2019-12-04T14:58:15.707 回答