我有一个跨平台 (Python) 应用程序,需要生成 PDF 第一页的 JPEG 预览。

在Mac上我正在产卵 啜饮. 。我可以在 Windows 上做一些类似简单的事情吗?

有帮助吗?

解决方案

无论如何,ImageMagick 将 PDF-> 位图转换委托给 GhostScript,因此这里有一个您可以使用的命令(它基于由 ps:alpha ImageMagick 中的委托,刚刚调整为使用 JPEG 作为输出):

gs -q -dQUIET -dPARANOIDSAFER -dBATCH -dNOPAUSE -dNOPROMPT \
-dMaxBitmap=500000000 -dLastPage=1 -dAlignToPixels=0 -dGridFitTT=0 \
-sDEVICE=jpeg -dTextAlphaBits=4 -dGraphicsAlphaBits=4 -r72x72 \
-sOutputFile=$OUTPUT -f$INPUT

在哪里 $OUTPUT$INPUT 是输出和输入文件名。调整 72x72 到您需要的任何分辨率。(显然,如果您将整个命令写成一行,请去掉反斜杠。)

这有两个好处:

  1. 您不再需要安装 ImageMagick。我并不是反对 ImageMagick(我非常喜欢它),但我相信简单的解决方案。
  2. ImageMagick 进行两步转换。首先 PDF->PPM,然后 PPM->JPEG。这样,转换就是一步完成的。

其他需要考虑的事项:根据我测试过的文件,PNG 的压缩效果比 JPEG 更好。如果您想使用 PNG,请更改 -sDEVICE=jpeg-sDEVICE=png16m.

其他提示

您可以使用 ImageMagick 的转换实用程序来执行此操作,请参阅中的一些示例 http://studio.imagemagick.org/pipermail/magick-users/2002-May/002636.html :

Convert taxes.pdf taxes.jpg 

将两页 PDF 文件转换为 [2] jpeg 文件:税收

我还可以将这些 JPEG 转换为缩略图,如下所示:

convert -size 120x120 taxes.jpg.0 -geometry 120x120 +profile '*' thumbnail.jpg

我什至可以将 PDF 直接转换为 jpeg 缩略图,如下所示:

convert -size 120x120 taxes.pdf -geometry 120x120 +profile '*' thumbnail.jpg

这将导致两个页面的缩略图和缩略图1和缩略图1。

PC 是否可能安装了 Acrobat?我认为 Acrobat 安装了一个 shell 扩展,以便 PDF 文档第一页的预览出现在 Windows 资源管理器的缩略图视图中。您可以通过 IExtractImage COM API 自行获取缩略图,您需要对其进行包装。 VBAccelerator 有一个 C# 示例 您可以将其移植到Python。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top