如何在 Linux 下将 PDF/djvu 文件转换为 PNG?

如何在 Linux 下将 PDF/djvu 文件转换为 PNG?

Imagemagick 无法在一个 PDF 文件上运行(Fedora 14):

$ convert -density 300 INPUT.PDF out.png
Error: /ioerror in --showpage--
Operand stack:
   1   true
Execution stack:
   %interp_exit   .runexec2   --nostringval--   --nostringval--   --nostringval--   2   %stopped_push   --nostringval--   --nostringval--   --nostringval--   false   1   %stopped_push   1878   1   3   %oparray_pop   1877   1   3   %oparray_pop   1861   1   3   %oparray_pop   --nostringval--   --nostringval--   141   1   319   --nostringval--   %for_pos_int_continue   --nostringval--   --nostringval--   1761   0   9   %oparray_pop   --nostringval--   --nostringval--
Dictionary stack:
   --dict:1157/1684(ro)(G)--   --dict:1/20(G)--   --dict:75/200(L)--   --dict:75/200(L)--   --dict:108/127(ro)(G)--   --dict:288/300(ro)(G)--   --dict:22/25(L)--   --dict:6/8(L)--   --dict:22/40(L)--
Current allocation mode is local
Last OS error: 27
GPL Ghostscript 8.71: Unrecoverable error, exit code 1
convert: Postscript delegate failed `INPUT.PDF':  @ error/pdf.c/ReadPDFImage/645.
convert: missing an image filename `out.png' @ error/convert.c/ConvertImageCommand/2953.
$ 

它不适用于 djvu 文件:

$ convert -density 300 INPUT.DJVU out.png
convert: no decode delegate for this image format `INPUT.DJVU' @ error/constitute.c/ReadImage/532.
convert: missing an image filename `out.png' @ error/convert.c/ConvertImageCommand/2953.
$

一个额外的:输出文件名

out-0.png
out-1.png
...
out-9.png
out-10.png
out-11.png
...
out-123.png
out-124.png

有沒有方法可以這樣做?

out-000.png
out-001.png
...
out-009.png
out-010.png
out-011.png
...
out-123.png
out-124.png

因为它们的顺序是错误的:

out-0.png
out-1.png
out-10.png
out-11.png
out-123.png
out-124.png
out-9.png

答案1

ImageMagick 编译时不支持 DJVU。您必须使用--with-djvu可传递给./configure脚本的选项重新编译它。

相关内容