我想使用iTextSharp讀取PDF文件。問題是,當試圖閱讀英文以外的PDF文件(例如印地文或阿拉伯文)時,它沒有得到正確的單詞。使用Itextsharp讀取本地化的PDF文件
我想知道,我是否應該在我的系統上安裝印地文或阿拉伯文字體,還是需要使用編碼進行操作?
ITextExtractionStrategy strategy = new SimpleTextExtractionStrategy();
string currentText = PdfTextExtractor.GetTextFromPage(pdfReader, page, strategy);
currentText = Encoding.UTF8.GetString(ASCIIEncoding.Convert(Encoding.Default, Encoding.UTF8, Encoding.Default.GetBytes(currentText)));
text.Append(currentText);
編輯:
樣品PDF作爲圖片:
提取的文本:
uxj ikfydk IFJ 「KN fuokZpd ukekoyh i`」 B la [; k%個& & & ftys DK UKE ftys DK UKE ftys DK UKE ftys DK UKE%%%% 0701-ò¶âã£ûæ- & & & fudk fudk fudk fudk; ; ; ; DK UKE DK UKE DK UKE DK UKE%%%% 1-¢AI™ & & & okMZ LA okMZ LA okMZ LA okMZ LA〔〔〔〔; ; ; ; ko uke ko uke ko uke ko uke%%% 1-®®®â§ââââÕÕÕâ012 012 012 012 & & & Hkkx la Hkkx la Hkkx la Hkkx la [[[[[ ; ; ; k k k k%%%%
看看是否有幫助http://stackoverflow.com/a/10191879/231316 –
對不起克里斯,沒有幫助。我正在嘗試閱讀印地文PDF文件。 – Parwej
你可以發佈樣本PDF嗎?如果沒有,你能至少張貼提取的原始字節,也許是前20個左右?字體不應該以任何方式用於文本提取,字體僅用於渲染。 –