C# 将带有表格的pdf解析为文本

C# 将带有表格的pdf解析为文本,c#,vb.net,C#,Vb.net,我需要在文本文件中解析这个pdf文档。我正在使用iTextSharp dll来实现这个目的。我的整个PDF文档正在正确解析,除了PDF文档中有一个表中有行之外。它解析该表,但是如果表的一个单元格中有一些空间,那么我在转换的文本文档中看不到该空间。以下是表格的格式 Col1 Col2 Col3 Col4 Col5 1 Test1 2 5 Test6 2 3 Test7 3 Te

我需要在文本文件中解析这个pdf文档。我正在使用iTextSharp dll来实现这个目的。我的整个PDF文档正在正确解析,除了PDF文档中有一个表中有行之外。它解析该表,但是如果表的一个单元格中有一些空间,那么我在转换的文本文档中看不到该空间。以下是表格的格式

Col1    Col2   Col3   Col4   Col5 

1       Test1   2     5       Test6
2               3             Test7
3       Test6         9       Test8
我看到的输出如下:

1 Test1 2 5 Test6 <LF>
2 3 Test7<LF>
3 Test6 9 Test8<LF>

<LF> is line feed.
我已经搜索了3-4天,没有找到正确的答案


任何帮助都将不胜感激。我需要在.net-C或VB.net中完成这项工作。我使用pdfBox来实现这个目的。它的速度有点慢,但是在解析pdf文档时它是完全免费的并且非常准确。下面是pdf框的链接,如果有人感兴趣

http://www.squarepdf.net/pdfbox-in-net

我会直接检查缺少间距的行上的每一行内容。是否存在间隔,并在以后剥离?在它的位置上是否有其他控制角色?如果每条线中都没有间距,我会看一看PDF31460行,如果没有,则在页面中。如果没有匹配/检测的内容,我不确定如何正确插入空格。pdf文件中有空格,但解析文本中没有。可能还有其他一些控制字符,但我在记事本++中打开了它,看不到任何控制字符。如果在获取ExtFromPage时它不在那里,则iTextSharp似乎需要修改…什么样的修改。我已经找了一段时间了。任何帮助或提示都将不胜感激。我对PDF的基本二进制结构知之甚少,无法告诉您修改的内容,但据推测PDF有一些空表单元格的名称,或者有一些其他的表布局和间距概念,这是iTextSharp所犯的错误。修改将是找出如何正确解析表示表布局和间距的二进制PDF数据,并将其转换回字符串/文本。
http://www.squarepdf.net/pdfbox-in-net