iText 7 提取字符串时文本乱码
Text garbled when iText 7 extracts a character string
我想从日语 PDF 中提取一个字符串。
但是,它出现乱码。
我该怎么做,或者我做错了什么?
iText.IO.Util.ResourceUtil.AddToResourceSearch("itext.font_asian.dll");
using (PdfReader reader = new PdfReader(pdfPath))
using (var doc = new PdfDocument(reader))
{
var rect = new Rectangle(100, 100, 800, 800);
var filter = new TextRegionEventFilter(rect);
var pageCount = doc.GetNumberOfPages();
for (int i = 1; i <= pageCount; i++)
{
ITextExtractionStrategy strategy = new FilteredTextEventListener(new LocationTextExtractionStrategy(), filter);
var page = doc.GetPage(i);
var str1 = PdfTextExtractor.GetTextFromPage(page, strategy);
}
}
Visual Studio 2015
C# .NET 框架 4.6.1
iText7(来自 Nuget 的 7.0.4)
iText.font-亚洲(来自 Nuget 的 7.0.4)
PDF 文件: Japanese_PDF.pdf
你做的一切都是对的。在 7.0.4
之前,文本提取功能对于某些 CID 字体确实存在问题。现在在 7.0.5-SNAPSHOT
中已修复此问题,不再重现该问题。
当前快照版本的 NuGet 包可以从 artifactory 下载。
我想从日语 PDF 中提取一个字符串。
但是,它出现乱码。
我该怎么做,或者我做错了什么?
iText.IO.Util.ResourceUtil.AddToResourceSearch("itext.font_asian.dll");
using (PdfReader reader = new PdfReader(pdfPath))
using (var doc = new PdfDocument(reader))
{
var rect = new Rectangle(100, 100, 800, 800);
var filter = new TextRegionEventFilter(rect);
var pageCount = doc.GetNumberOfPages();
for (int i = 1; i <= pageCount; i++)
{
ITextExtractionStrategy strategy = new FilteredTextEventListener(new LocationTextExtractionStrategy(), filter);
var page = doc.GetPage(i);
var str1 = PdfTextExtractor.GetTextFromPage(page, strategy);
}
}
Visual Studio 2015
C# .NET 框架 4.6.1
iText7(来自 Nuget 的 7.0.4)
iText.font-亚洲(来自 Nuget 的 7.0.4)
PDF 文件: Japanese_PDF.pdf
你做的一切都是对的。在 7.0.4
之前,文本提取功能对于某些 CID 字体确实存在问题。现在在 7.0.5-SNAPSHOT
中已修复此问题,不再重现该问题。
当前快照版本的 NuGet 包可以从 artifactory 下载。