[使用Imagemagick将范围从pdf的页面提取到jpeg时输出文件名

问题描述 投票:4回答:2

我正在尝试使用convert(Imagemagick)将多页pdf文件中的页面范围提取为单个jpeg。提取工作正常。我坚持认为,如果要提取10-20页范围,我仍然会得到名称为page-0.jpeg到page-9.jpeg的jpeg文件,而我希望它们被命名为page-10.jpeg到第20页。是否可以在命令行上指定?

我之所以需要这样做,是因为我希望以10的大小来提取页面,以避免为大型pdf文件占用过多的内存,并且不想一直重命名这些文件。

我记得以前曾在一个早期的项目中工作过,但无法弄清楚我现在缺少什么。

pdf imagemagick jpeg
2个回答
13
投票

最终设法做到这一点。如果其他人也在寻找答案,请留下答案。该解决方案适用于Imagemagick 6.5.1。

因此,我们希望将a.pdf中编号为i到j的页面提取到单独的jpeg中,并将文件命名为a-10.jpeg到a-20.jpeg。

convert a.pdf[i-j] -set filename:page "%[fx:t+i]" a-%[filename:page].jpeg

这使用fx运算符。 fx:t按顺序给出当前图像的屏幕编号,我们可以向其添加偏移量。


0
投票

您可以通过添加%d参数来指定输出文件名中-scene n使用的第一个“页面”编号,例如:

-scene n

将输出convert a.pdf[0-9] -scene 10 a-%d.jpeg a-10.jpeg

© www.soinside.com 2019 - 2024. All rights reserved.