0

我试图在 .NET 应用程序中使用 Itextsharp 阅读 PDF。我能够成功地阅读单个单词。我现在面临的挑战是读一张桌子。我有一个这样的表结构:

在此处输入图像描述

请注意,这里的一些列名是两行的。例如部门代码和员工识别号。

因此,如果员工属于“人力资源”部门,我的要求是阅读员工识别号和工资。为此,我必须检查 PDF 文件中是否存在名为“部门代码”的列。

当我使用 iTextsharp 阅读此表时,会发生什么让我们说“部门代码”列的“部门”部分位于位置 1,但“代码”位于第 5 位。这是因为该列显示为两行在我阅读本专栏的“代码”部分之前,pdf 中是否存在其他四个词。我完全被困在这个:(

任何人都知道如何确保存在列名“部门代码”并从此表中读取相应的值。

感谢你的帮助!

问候, 贾里尔

4

1 回答 1

1

不幸的是,PDF 实际上没有“表格”的概念。看起来像表格的东西只是一堆任意文本,周围恰好有线条。大多数 PDF 创建库允许您从“表格”创建内容,但最终会将它们变成文本和不相关的行。此外,您看到的“空白单元格”实际上可能根本没有文本(尽管它可能是一个空格)。

对于这种事情,您几乎只需要提出一些特定于您的文档的任意规则。您可以尝试计算相对于文本存在的行并尝试以更合乎逻辑的格式重建表格,但您将很难做到这一点。

于 2012-04-19T16:01:16.523 回答