C# PdfBox和iTextSharp的奇怪行为

C# PdfBox和iTextSharp的奇怪行为,c#,winforms,pdf,itextsharp,C#,Winforms,Pdf,Itextsharp,我正在使用C#开发一个Windows窗体应用程序,我的应用程序将PDF文件转换为文本。例如,我有以下引文: NEVILLE,C.(2010)参考和避免剽窃的完整指南。第二版。梅登黑德:开放大学出版社 它是一个多行文本。转换工作正常,但有一个问题-引用返回为两个不同的行-第一行在编辑后以句号结束,另一行从Maidenhead开始。这使得我无法继续工作。它没有保留真正的格式。 你能为这个问题提出一个解决方案吗?它不能保留真正的格式。-您称之为真实格式的内容在pdf中没有明确显示。所有这些(通常)都是

我正在使用C#开发一个Windows窗体应用程序,我的应用程序将PDF文件转换为文本。例如,我有以下引文:

NEVILLE,C.(2010)参考和避免剽窃的完整指南。第二版。梅登黑德:开放大学出版社

它是一个多行文本。转换工作正常,但有一个问题-引用返回为两个不同的行-第一行在编辑后以句号结束,另一行从Maidenhead开始。这使得我无法继续工作。它没有保留真正的格式。
你能为这个问题提出一个解决方案吗?

它不能保留真正的格式。-您称之为真实格式的内容在pdf中没有明确显示。所有这些(通常)都是位于页面某处的文本片段。因此,文本提取基本上最多只能返回几行文本。作为人类,您可以直观地识别pdf中的段落等。可以尝试编写文本结构识别例程。然而,这样的例行程序可以识别一定程度的错误结构。mkl所说的是正确的。普通PDF没有任何语义结构,除非它们被标记。所以在回答这个问题之前,我们需要一个反问题的答案:你的PDF有标签吗?如果不是,你就不走运了。