Imagemagick 在从 pdf 转换为 jpg 时会更改页面大小

Imagemagick 在从 pdf 转换为 jpg 时会更改页面大小

我想将 pdf 转换为 jpg。页面大小不标准。(pdf 在此处:伊姆斯普

当我使用 将 pdf 转换为 jpg 时 convert -density 300 sheet.pdf sheet.jpg,我得到了这个:转换后的图像。(在浏览器中,区别不是很明显。下载文件即可看到多余的空白)

如您所见,imagemagick 改变了纸张的大小,因此增加了额外的空间。

我想保持页面大小不变。我该怎么做?

答案1

我建议你使用pdfimages而不是convert
pdfimages -list Test.pdf获得了pdf文件。

page   num  type   width height color comp bpc  enc interp  object ID
---------------------------------------------------------------------
   1     0 image    4128  5440  gray    1   1  ccitt  no        97  0
   2     1 image    4112  5424  gray    1   1  ccitt  no        95  0
   3     2 image    4080  5440  gray    1   1  ccitt  no        93  0
   4     3 image    4096  5440  gray    1   1  jbig2  no        12  0
   5     4 image    4176  5488  gray    1   1  jbig2  no        16  0

所以你的图片pdf具有不同的大小和加密。
使用以下命令,您将提取所有文件:

pdfimages test.pdf sheet

它将赋予进步的名字sheet-000.pbm sheet-001.pbm sheet-002.pbm sheet-003.pbm sheet-004.pbm,并将其写入骨密度仪格式。
遗憾的是,该选项-j不适用于您的特定情况,您必须手动转换:

convert sheet-001.pbm sheet-001.jpg

此时您将获得具有原始尺寸的图像。


现在你的问题的核心是:哪种页面尺寸?!?

 A4        210   × 297   mm   at 300 dpi     2480 x 3508 Pixels 
 Letter    215.9 × 279.4 mm   at 300 dpi     2550 x 3300 Pixels
 ...

让我们选择A4
该比例不符合您的页面比例,因此您可以扭曲它,或者在上面或侧面留下一些空白。

 convert sheet-001.pbm -resize 2480x3508\! distort.jpg      # you fix xy
 convert sheet-001.pbm -resize 2480x       Take_Width.jpg   # you fix x
 convert sheet-001.pbm -resize x3508       Take_Height.jpg  # you fix y

要安装,pdfimages您可以安装poppler-utils。搜索您的操作系统。

如何进行计算

 Letter    8.5 x 11 inches    x 300 dpi  ---> 2550 x 3300 Pixels

相关内容