如何防止PDFBox用连字符分割单词

时间:2013-03-29 21:04:21

标签: c# pdfbox hyphenation

我正在使用PDFBox 1.7.0版本从PDF中提取文本。使用IKVM.NET将类编译为.NET。我正在使用以下代码,我在其中传递文件的名称和路径:

public static String PDFText(String PDFFilePath)
    {
        PDDocument doc = PDDocument.load(PDFFilePath);
        PDFTextStripper stripper = new PDFTextStripper();
        string text = stripper.getText(doc);
        doc.close();
        return text;
    }

PDF全程包含2列。 提取工作相当好。但是,许多单词被连字符分割到下一行,它们应该作为一个完整的单词保留。

例如,“成为”一词会像许多其他词一样变为“正在成长”。

有没有办法阻止PDFBox用短划线“ - ”或连字符随意拆分一个单词并在一行上显示单词的一部分,同时将剩下的单词带到下一行?

我在stackoverflow上看到一篇关于随机插入单词空格的文章,即PDFBox adding white spaces within words

但是,我的问题是用破折号或连字符拆分PDFBox。

我还看到了一个名为charactersByArticle的方法的引用,该方法明确用于双列PDF,我想也许这可能正确地呈现提取的文本。但是,我还没有找到一个如何使用此方法的工作示例,只是预告片引用它。

如果charactersByArticle方法不能阻止这种情况,我甚至会考虑使用正则表达式,如果有人可以提供一个很好的工作示例,将其与上面的PDFTextStripper方法结合使用。提前谢谢。

0 个答案:

没有答案