如何解决使用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 举报,一经查实,本站将立刻删除。