【发布时间】:2023-03-05 10:44:01
【问题描述】:
我有大约 400 本电子书,全部为 PDF 格式,我的任务是从每一本电子书中提取封面(这是每个 PDF 的第一页)并将它们全部导出为单独的图像(PNG 或 JPEG)文件
所以我最终会得到 400 本书和 400 张封面图片。
我有 Windows
非常感谢任何建议。
【问题讨论】:
-
OK - 那么到目前为止你写了什么?这已经在很多地方讨论过了。您尝试的哪一部分不起作用?
我有大约 400 本电子书,全部为 PDF 格式,我的任务是从每一本电子书中提取封面(这是每个 PDF 的第一页)并将它们全部导出为单独的图像(PNG 或 JPEG)文件
所以我最终会得到 400 本书和 400 张封面图片。
我有 Windows
非常感谢任何建议。
【问题讨论】:
使用 ghostscript 从 pdf 渲染 tiff 或 jpg。您可以对结果进行细粒度控制。
如果这是商业应用程序,您需要商业许可证。如果您在商业上使用该应用程序,但在您的组织内部,您可以使用 GPL 版本的 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
这将在d:\ 上以150dpi 的分辨率创建一个some01.tiff 文件。
【讨论】:
以下主题适合您的要求。将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/ 将 PDF 转换为 JPG 图像的 6 种方法 你也可以看看这个线程:how to open a page from a pdf file in pictureBox in C#
如果您使用此过程将 PDF 转换为 tiff,则可以使用此类从 tiff 中检索位图。
【讨论】: