Imagemagick 使用单个命令将多页pdf转换为多页

Imagemagick 使用单个命令将多页pdf转换为多页,imagemagick,ghostscript,imagemagick-convert,Imagemagick,Ghostscript,Imagemagick Convert,我想将多页PDF高效地转换为单页图像 我已经知道如何使用imagemagick一次完成一页。比如说, convert x.pdf[2] x3.jpg 将给我的pdf的第三页作为图像。因此,如果我使用identify计算出pdf中有多少页面,那么我可以循环浏览并将pdf中的所有页面转换为图像。然而,这种方法可能需要一段时间。例如,一份15页的pdf可能需要15-30秒 根据我在别处(也在imagemagick论坛上)看到的答案,下面的imagemagick命令应该将pdf拆分为多个图像 conv

我想将多页PDF高效地转换为单页图像

我已经知道如何使用imagemagick一次完成一页。比如说,

convert x.pdf[2] x3.jpg
将给我的pdf的第三页作为图像。因此,如果我使用identify计算出pdf中有多少页面,那么我可以循环浏览并将pdf中的所有页面转换为图像。然而,这种方法可能需要一段时间。例如,一份15页的pdf可能需要15-30秒

根据我在别处(也在imagemagick论坛上)看到的答案,下面的imagemagick命令应该将pdf拆分为多个图像

convert x.pdf x-%0d.jpg
但所有这些最终都会创建名为x-0.jpg的第一个页面

作为替代方案,我尝试使用具有突发功能的pdftk。我在那里面临的问题是,burst并非在所有情况下都有效。它适用于某些pdf,而不适用于其他pdf

任何关于如何改进的建议都会有所帮助


我的操作系统是Mac OSX Lion,但我也需要在CentOS 6上使用它。

遇到了同样的问题。重新安装Imagemagick以在“山狮”中工作。如果使用brew,则只需

  $brew unlink imagemagick
  $brew install imagemagick

您缺少数字的数量。使用:

convert x.pdf x-%04d.jpg

其中
4
表示页数将显示4位数字。

如果在Debian上使用Graphicsmagick或在macOS上使用ImageMagick,则可能需要在命令中添加ADJOIN。 所以看起来应该是这样的

convert x.pdf +adjoin x-%04d.jpg

当我试图转换我的多页pdf时,生成的图像文件有灰色背景,尽管pdf有白色背景。(@johnp在被接受的答案上对此发表了评论,但我无法让他的评论直接对我起作用。)

以下是使背景变白的方法:

convert-验证您的密码-背景白色-alpha删除-alpha关闭-密度300-质量80-详细的“Your file.pdf”“Your file.png”

我的pdf有一个密码,因此需要进行身份验证。 您可以在此处看到选项摘要:

-使用此密码对图像进行身份验证值解密

-背景色背景色

-alpha打开、激活、关闭、停用、设置、不透明、复制、透明、提取、背景或塑造alpha通道

-密度几何图形图像的水平和垂直密度

-质量值JPEG/MIFF/PNG压缩级别

-详细打印有关图像的详细信息

更多详情:


alpha-remove选项:

当我直接使用ghostscript时,这个答案非常有效-那么为什么imagemagick不起作用呢?imagemagick convert在CentOS上的工作与预期的一样。目前,它在Mac上似乎是个问题。它似乎只输出pdf的第一页,我在Mac上。该命令在我的Mac上运行良好(假设您真的有多页PDF)并且包括所需的零数,例如%02d或不带任何零的仅%d。另一个问题可能是您在ImageMagick代理中没有安装Ghostscript,或者您需要将Ghostscript作为代理升级到ImageMagick。您的ImageMagick版本是什么?它是否列出gs或gslib?Ghostscript的版本是什么?
gs--version
。当使用
-flatte
时,参数会展开,但只生成一幅图像,N页,不透明度为1/N,对PDF无效,这对PDF来说是有原因的,但在其他上下文中可能有意义。
-flatte
似乎是必要的,因为它填充了g默认情况下,光线(为什么不是黑色或白色?显然是一种“折衷”)不会接受
-transparency{black,…,white}
,正如
zsh
completion所建议的那样,并且无论出于何种原因,它在展平时使用了不同的背景色。无论如何,您的方法是正确的,如果出现问题,只需使用
-transparency color
我的操作系统是Mac OSX Lion,但我也需要在CentOS 6上使用它