使用imagemagick将pdf转换为图像,并获取输出文件的列表

使用imagemagick将pdf转换为图像,并获取输出文件的列表,imagemagick,Imagemagick,我找到了如何使用convert命令将我的pdf转换成png文件。这是伟大的,因为开箱即用,它创建了一个pdf中的每个页面的图像,这正是我所需要的。问题是我事先不知道我的pdf有多少页,所以我不知道创建了多少页convert。我在互联网上看了又看,读了imagemagick网站,但找不到合适的方式来输出我需要的信息 我需要一个非常简单的输出,如下所示: $ convert in.pdf out.png out-0.png out-1.png out-2.png ... 在ImageMagick中

我找到了如何使用
convert
命令将我的pdf转换成png文件。这是伟大的,因为开箱即用,它创建了一个pdf中的每个页面的图像,这正是我所需要的。问题是我事先不知道我的pdf有多少页,所以我不知道创建了多少页
convert
。我在互联网上看了又看,读了imagemagick网站,但找不到合适的方式来输出我需要的信息

我需要一个非常简单的输出,如下所示:

$ convert in.pdf out.png
out-0.png
out-1.png
out-2.png
...

在ImageMagick中,只需执行以下操作:

identify in.pdf

in.pdf[0] PDF 256x256 256x256+0+0 16-bit sRGB 139350B 0.000u 0:00.002
in.pdf[1] PDF 256x256 256x256+0+0 16-bit sRGB 139350B 0.010u 0:00.001
in.pdf[2] PDF 256x256 256x256+0+0 16-bit sRGB 139350B 0.010u 0:00.000

或者如果你只想知道名字,那么

identify -format "%f[%p]\n" in.pdf

in.pdf[0]
in.pdf[1]
in.pdf[2]

或者,如果您只想知道页数:

identify -format "%n\n" in.pdf | head -n 1

3

注意:如果没有管道到封头,则会重复3次


对不起,我没有看到您的答案-我的浏览器一定缓存了该页面!无论如何,祝你圣诞快乐!没问题,马克。同样的,也祝你新年快乐。谢谢@fmw42。回到你的解决方案,我必须发出第二个命令。现在就可以了。奇怪的是,
convert
命令无法输出自己创建的文件名
@Guillaume Bois
我不明白你的评论。你到底想做什么?如果需要,ImageMagick可以使用-set filename输出输入名称。看见但是,这与知道输出图像的数量有什么关系?@fmw42请看我的问题,我需要什么,这很清楚。
-set filename
似乎在修改输出文件名。我不需要那个。默认输出文件名对我来说没有问题。我只需要使用
convert
命令来输出它创建的内容,这样我就可以处理输出,并且可以在数据库中插入所有N个文件。如果我不明白,我必须返回到您的解决方案,并使用
检查pdf文件中有多少页,然后使用
转换
创建N个文件,并假设一切都按计划进行。。。