提取多个PDF的第一页&将它们保存为图像

时间:2016-11-23 20:23:28

标签: c# image pdf

我有大约400本电子书,都是PDF格式的,我的任务是从每一本电子书中提取封面(这是每张PDF的第一页)并将它们全部导出为单独的图像(PNG或JPEG)文件

所以我最终会得到400本电子书和400张封面图片。

我有Windows

任何建议都非常感谢。

2 个答案:

答案 0 :(得分:0)

以下主题适合您的请求。将pdf文件转换为jpeg图像

一种解决方案是使用第三方库。 ImageMagick非常受欢迎,也可以免费使用。您可以在此处获取.NET包装器。最初的ImageMagick下载页面就在这里。

http://www.codeproject.com/KB/library/pdftoimages.aspx使用Solid Framework将PDF页面转换为图像文件 http://www.print-driver.com/howto/convert_pdf_to_jpeg.html通用文档转换器 http://www.makeuseof.com/tag/6-ways-to-convert-a-pdf-file-to-a-jpg-image/ 6种方法将PDF转换为JPG图像 你也可以看一下这个帖子:如何从C#中的pictureBox中的pdf文件打开一个页面

如果您使用此过程将PDF转换为tiff,则可以使用此类从tiff中检索位图。

答案 1 :(得分:0)

使用ghostscript从pdf渲染tiff或jpg。你可以对结果进行细致的控制。

如果这是商业应用程序,则需要商业许可证。如果您在商业中使用该应用程序,但在您的组织内,您可以使用GPLed版本的ghostscript。

可以在这里找到Ghostscript。许多开源包中的PDF解释器依赖于gs PDF解释器。例如,Imagemagick需要ghostscript库。

在此处下载GS:http://ghostscript.com/download/gsdnld.html

使用C#Process类来执行Ghostscript,这里有一个SO主题How to run a C# console application with the console hidden

tiff的命令行将是:

D:\gs\gs9.20>bin\gswin64c.exe -sOutputFile=d:\some%02d.tiff -dBATCH -dNOPAUSE -sDEVICE=tiff24nc -sCompression=lzw -r150 -sPageList=1 d:\PDFReference.pdf

这将在some01.tiff上以150dpi分辨率创建一个d:\文件。