我在使用ImageMagick时遇到了一些麻烦。
我在Windows 7上安装了GhostScript v9.00和ImageMagick-6.6.7-1-Q16 - 32位
在cmd中运行以下命令时
转换D:\ test \ sample.pdf D:\ test \ pages \ page.jpg
只有pdf的第一页转换为pdf。我也尝试过以下命令
转换D:\ test \ sample.pdf D:\ test \ pages \ page-%d.jpg
这会将第一个jpg创建为page-0.jpg,但不会创建另一个jpg。 如果有人能对此有所了解,我真的很感激。感谢。
更新
我使用-debug“All”运行命令
其中一条出线说:
2011-01-26T22:41:49+01:00 0:00.727 0.109u 6.6.7 Configure Magick[5800]: nt-base.c/NTGhostscriptGetString/1008/Configure
registry: "HKEY_CURRENT_USER\SOFTWARE\GPL Ghostscript\9.00\GS_DLL" (failed)
毕竟它可能与GhostScript有关吗?
答案 0 :(得分:35)
您可以通过在文件名后面的[]中添加数字来指定要转换的页面:
convert D:\test\sample.pdf[7] D:\test\pages\page-7.jpg
但是,它应该使用您的命令将所有页面转换为单个图像。
答案 1 :(得分:16)
顺便说一句,如果你需要转换第一页和第二页,那么提供数组逗号分隔值
convert D:\test\sample.pdf[0,1] D:\test\pages\page.jpg
生成的JPEG文件将命名为:
page-0.jpg
page-1.jpg
您也可以
convert D:\test\sample.pdf[10,15,20-22,50] D:\test\pages\page.jpg
生成的JPEG文件将命名为:
page-10.jpg
page-15.jpg
page-20.jpg
page-21.jpg
page-22.jpg
page-50.jpg
可能对某人有帮助。
答案 2 :(得分:5)
根据ImageMagick论坛的网站管理员:
ImageMagick在找到Adobe时会使用pngalpha设备 插画家PDF。其中许多是单页。理想情况下,Ghostscript 将支持允许多个PDF页面的设备 透明度,但它没有......
轻松修复。 编辑delegates.xml并将pngalpha更改为pnmraw。
这对我有用。我不知道是否会引入任何其他问题。
答案 3 :(得分:5)
我找到了这个解决方案,它将pdf中的所有页面转换为单个jpg图像:
montage input.pdf -mode Concatenate -tile 1x output.jpg
蒙太奇包含在ImageMagick中。
在Ubuntu 13.04上的ImageMagick 6.7.7-10上测试过。
答案 4 :(得分:0)
我在使用 GhostScript 时遇到了类似的问题。这可以是在输出文件名中使用 %03d
迭代器的求解器。示例如下:
gs -r300 -dNOPAUSE -dBATCH -sDEVICE#pngalpha -sOutputFile=output-%03d.png input.pdf
这里是包含详细信息的参考:https://ghostscript.com/doc/current/Devices.htm