发布网友 发布时间:2022-04-21 07:19
共2个回答
懂视网 时间:2022-05-19 17:54
有时我们需要对PDF文件进行一些处理,提取文本、合并等。以前我们使用A-PDF Text Extractor免费工具,为什么不自己写一个呢?
现在我们可以使用PDFBox-0.7.3这个开源类库. 下载解包后引用:
代码如下:
PDFBox-0.7.3.dll
IKVM.GNU.Classpath.dll
新建一个项目,代码很简单:
代码如下:
public static string ParseToTxtStringUsingPDFBox(string filename){
PDDocument doc = PDDocument.load(filename);
PDFTextStripper stripper = new PDFTextStripper();
return stripper.getText(doc);
}
获得这个textString,再把它们写成磁盘文件就可以了, 像这样的方法:
代码如下:
public static void WriteToTextFile(string str,string txtpath)
{
if (string.IsNullOrEmpty(txtpath))
throw new ArgumentNullException("Output file path should not be Null");
using (var txtWriter = new StreamWriter(txtpath))
{
txtWriter.Write(str);
txtWriter.Close();
}
}
其它的功能您可以自行发挥了. 这个类库目前支持:
PDF to text extraction
Merge PDF Documents
PDF Document Encryption/Decryption
Lucene Search Engine Integration
Fill in form data FDF and XFDF
Create a PDF from a text file
Create images from PDF pages
Print a PDF
热心网友 时间:2022-05-19 15:02
pdfbox的ikvm版本和iTextSharp都不支持图片的提取,如果你想要这个功能,建议使用xpdf的pdftoimage(生成的是ppm,然后再转换成你想要的图片格式)。