有很多語言都可以對pdf內容進行提取,我提取pdf文件的目的主要是為了對pdf內容進行分析。
查找了不少這方面的資料,很多都是語焉不詳。
我使用VS的nugut進行查找,以pdf為關鍵詞,找到了很多的類庫可以處理該問題。綜合一切判斷,選擇iText為基礎進行分析。
確定了Itext之后,查閱相關文檔,得到其獲取內容的代碼如下:
//創建閱讀器,Item是文件路徑 PdfReader pdfReader = new PdfReader(item); //獲取文檔內容 PdfDocument pdfDoc = new PdfDocument(pdfReader); string strContent = string.Empty; //對每一頁內容進行提取 for (int page = 1; page <= pdfDoc.GetNumberOfPages(); page++) { ITextExtractionStrategy strategy = new SimpleTextExtractionStrategy(); string pageContent = PdfTextExtractor.GetTextFromPage(pdfDoc.GetPage(page), strategy); //將每一頁內容放入字符串中 strContent+=pageContent.Replace("\n",""); } //關閉讀取工具 pdfDoc.Close(); pdfReader.Close();
就這么愉快地把需求實現啦。非常感謝itext作者的辛勤付出。