linux - 如何在 Linux 中使用命令行将 PDF 转换为 JPG?

标签 linux pdf jpeg converters

<分区>

在 Linux 上使用命令行将 PDF 转换为(单个)JPEG 的快速可靠方法有哪些?

最佳答案

在我的一生中,在过去的 5 年里,我无法让 imagemagick 始终如一地(如果有的话)为我工作,而且我不知道为什么人们不断地再次推荐它并且再次。我今天刚刚在谷歌上搜索了如何将 PDF 转换为 JPEG,找到了这个答案,并尝试了 convert,但它对我来说根本不起作用:

损坏的命令(对我不起作用):

# BROKEN cmd
$ convert in.pdf out.jpg
convert-im6.q16: not authorized `in.pdf' @ error/constitute.c/ReadImage/412.
convert-im6.q16: no images defined `out.jpg' @ error/convert.c/ConvertImageCommand/3258.

(2022 年 2 月 24 日更新:here is the fix for imagemagick 所以 convert 会起作用。另见 my comment here 和我的评论 under this answer here 。我仍然喜欢 pdftopm ,但是,在下面要好得多。)

然后,我想起我使用并写过另一个工具,所以我用谷歌搜索“linux convert pdf to jpg Gabriel Staples”,点击第一个匹配项,然后向下滚动到我的答案。这对我来说是完美的。这是基本的命令格式:

好的命令——改用这个:

# GOOD cmd
pdftoppm -jpeg -r 300 input.pdf output 

-jpeg设置输出图片格式为JPG,-r 300设置输出图片分辨率为300DPI,output > 将是所有图像页面的前缀,这些图像将被编号并放入您当前工作的目录中。但是,在我看来,更好的方法是使用 mkdir -p images首先创建一个“images”目录,然后将输出设置为 images/pg 以便所有输出图像都将干净地放置到您刚刚创建的 images 目录中,其中文件前缀 pg 在他们每个数字的前面。

因此,这是我最喜欢的命令:

  1. [每页生成约 1MB 大小的文件] 以 .jpg 格式以 300 DPI 输出:

     mkdir -p images && pdftoppm -jpeg -r 300 mypdf.pdf images/pg
    
  2. [每页生成约 2MB 大小的文件] 以 .jpg 格式以最高质量(最小压缩) 输出并且仍然是 300 DPI :

     mkdir -p images && pdftoppm -jpeg -jpegopt quality=100 -r 300 mypdf.pdf images/pg
    
  3. 如果您需要更高的分辨率,可以尝试 600 DPI:

     mkdir -p images && pdftoppm -jpeg -r 600 mypdf.pdf images/pg
    
  4. ...或 1200 DPI:

     mkdir -p images && pdftoppm -jpeg -r 1200 mypdf.pdf images/pg
    

有关更多详细信息和选项,请参阅下面的引用资料。

引用资料:

  1. [我的回答] Convert PDF to image with high resolution
  2. [我的回答] https://askubuntu.com/questions/150100/extracting-embedded-images-from-a-pdf/1187844#1187844

关键词:ubuntu linux pdf转图片; pdf转jpeg; ptdf 转 tiff; pdf2图像; pdf2tiff; pdftoppm; pdf转图像; pdftotif; pdftopng; pdf2png

关于linux - 如何在 Linux 中使用命令行将 PDF 转换为 JPG?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43085889/

相关文章:

linux - 在 Linux 中执行 diff 时忽略星号 (*)

javascript - pdf object.messagehandler onMessage 在 IE 中不工作

java - 将密码应用于具有java数字签名的PDF文件

javascript - 在新选项卡中打开 PDF 数据对象

python - 使用Python从pdf中提取图像

node.js - 使用 Node Js 将普通图像转换为渐进图像

c# - 如何在 Windows Phone Silverlight 中通过 HTTP-POST 发送 JPG?

linux - 当 bash 脚本以 .运算符(operator)?

linux - 三 | linux终端中的命令

ruby-on-rails - 哪个快?在 ruby​​ 中使用 minimagick gem 或在 linux 中使用直接系统调用转换 (ImageMagick)