有很多语言都可以对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作者的辛勤付出。