我使用iTextSharp读取PDF文本。几乎每个国家的语言都可以阅读。
但是我尝试捕获包含中文的PDF文本,但是无法捕获。
这似乎是字体问题,而不是中文问题,因为我出生在与中文文档相同的环境中,可以被捕获。并且此字体也已相应安装。
下面是仅用于测试的文件链接:PDF Documnets And fonts.otf
寻求帮助。有什么问题以及如何解决?谢谢。
// Below code just fyi
private void test()
{
string fileName = @"pdf_Filepath";
PdfReader pdfReader = new PdfReader(fileName);
string strData = "";
string line = "";
int totalPage = pdfReader.NumberOfPages;
for (int pageNum = 1; pageNum <= totalPage; pageNum++)
{
ITextExtractionStrategy strategy = new SimpleTextExtractionStrategy();
string currentText = PdfTextExtractor.GetTextFromPage(pdfReader, pageNum, strategy);
strData += "PDF Page " + pageNum + ";" + Environment.NewLine;
string[] words;
int num = currentText.Length;
words = currentText.Split('\n');
for (int j = 0, len = words.Length; j < len; j++)
{
line = Encoding.UTF8.GetString(Encoding.UTF8.GetBytes(words[j])).Trim();
Console.WriteLine(line); // Can read English, but not Chinese
strData += line + Environment.NewLine;
}
}
}
您是否尝试过使用PdfPig C#库? https://github.com/UglyToad/PdfPig