使用iText7从PDF中获取文本并使用损坏的编码

问题描述

我正在尝试使用以下方法从PDF中提取文本:

public static string GetRectangleText(string pdfPath,int pageId,float[] rectangleDimensions)
{
    using (PdfDocument pdfDoc = new PdfDocument(new PdfReader(pdfPath)))
    {
        var page = pdfDoc.GetPage(pageId);
        iText.Kernel.Geom.Rectangle rect = new iText.Kernel.Geom.Rectangle(rectangleDimensions[0],rectangleDimensions[1],rectangleDimensions[2],rectangleDimensions[3]);
        var filter = new IEventFilter[1];
        filter[0] = new TextRegionEventFilter(rect);
        var filteredTextEventListener = new FilteredTextEventListener(new LocationTextExtractionStrategy(),filter);
        var result = PdfTextExtractor.GetTextFromPage(page,filteredTextEventListener);
        return result;
    }
}

虽然它对于大多数文档都适用,但几个PDF似乎已破坏其编码,但返回的字符串如ǪȃǷǻȁǭǵǶǬdzȇǹǺǸǶǰǺǭdzȄǹǺǪǨ,668(')25&216758&7,21实际上应该是ВЫПУЩЕНО ДЛЯ СТРОИТЕЛЬСТВА / ISSUED FOR CONSTRUCTION

我想知道某种特定的LocationTextExtractionStrategy是否会有所帮助?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...