想要在Linux上快速进行pdf到jpg的转换[关闭]

Modified on: Tue, 18 Jun 2019 11:00:02 +0800

我目前正在使用Imagemagick将PDF转换为JPEG光栅图像。
它很慢,占用了大量内存。

我使用的命令是:

convert -geometry 1024x768 -density 200 -colorspace RGB foo.pdf bar%02d.jpg

我猜它很慢,因为它使用了ghostscript。
但是在Linux机器上必须有更快的方法。

有人找到了更好的解决方案吗?

欢呼声

作者:mat3001

最佳答案

直接使用Ghostscript(而不是使用ImageMagick的convert命令,间接调用Ghostscript)确实更快。它可以让您更好地控制转换参数。试试

gs \
   -sDEVICE=jpeg   \
   -o bar_%03d.jpg \
   -dJPEGQ=95      \
   -r600x600       \
   -g4960x7016     \
   foo.pdf

,其中

  • -o:确定输出路径+文件名(并保存-dBATCH -dNOPAUSE的用法)
  • -dJPEGQ:将JPEG质量设置为95%
  • -r:将分辨率设置为600dpi
  • -g:将图片大小设置为4960x7016px
  • -sDEVICE:将输出设置为JPEG

这个命令对你来说可能仍然会变慢并且创建比预期更大的文件。对于较小的文件大小和更快的执行尝试这(可能接近convert命令行的输出质量):

gs \
   -sDEVICE=jpeg   \
   -o bar_%03d_200dpi_q80.jpg \
   -dJPEGQ=80      \
   -r200x200       \
   -g1653x2339     \
   foo.pdf

甚至

gs \
   -sDEVICE=jpeg   \
   -o bar_%03d_default_a4.jpg \
   -sPAPERSIZE=a4 \
   foo.pdf

(它提供72dpi的分辨率,通常足以满足大多数屏幕和大多数Web应用程序的需要。)

作者:,Kurt Pfeifle

相关问答

添加新评论