我尝试使用itextshap从PDF中提取文本,它将使用英语,但是当PDF文件包含阿拉伯字符时,我得到的文本已损坏。
我的代码是:
Public Function ReadPdfFile(fileName As String) As String
Dim text As New StringBuilder()
If File.Exists(fileName) Then
Dim pdfReader As New PdfReader(fileName)
For page As Integer = 1 To pdfReader.NumberOfPages
Dim strategy As ITextExtractionStrategy = New SimpleTextExtractionStrategy()
Dim currentText As String = PdfTextExtractor.GetTextFromPage(pdfReader, page, strategy)
currentText = Encoding.UTF8.GetString(ASCIIEncoding.Convert(Encoding.[Default], Encoding.UTF8, Encoding.[Default].GetBytes(currentText)))
text.Append(currentText)
Next
pdfReader.Close()
End If
Return text.ToString()
End Function
我返回的阿拉伯文字是:
K3yboard.com :عقوملاةركف 。 。 كيفارجلاوتاينورتكللإاورتويبمكلاةنايصوبيوللتاحورشةبتكمنعهرابععقوملا هيجولونكتلارابخلأاو.باعلاورتويبمكجماربليمحتةبتكمو :عقوملافده نسنمببببلللملبقالوقعلالورالورشلاوباذجلارهظملابلوصولا31اميإقوف
我的原文是:
فكرةالموقع: الموقععبارهعنمكتبةشروحاتللويبوصيانةالكمبيوتروالإلكترونياتوالجرافيك。 。 والأخبارالتكنولوجيهومكتبةتحميلبرامجكمبيوتروالعاب。 هدفالموقع: الوصولبالمظهرالجذابوالشروحاتالبسيطهإليعقولجيلالشباب