ImageMagick:将图像转换为 A4 页面大小的 PDF,图像适合页面

Posted

技术标签:

【中文标题】ImageMagick:将图像转换为 A4 页面大小的 PDF,图像适合页面【英文标题】:ImageMagick: convert image to PDF with A4 page size and image fit to page 【发布时间】:2014-06-06 12:49:15 【问题描述】:

我想将不同的图像格式(bmp、jpg、gif、png、tiff 包括多页)转换为具有 A4 页面大小和适合页面的图像(必要时调整大小)的 PDF 格式。图像应该位于页面的中心,我想定义一个偏移量。 我试过下面的代码,但顶部没有偏移,图像质量真的很差。

convert png.png -gravity North -resize 500x500 -quality 100 -page a4x5x5 myout.pdf

有什么办法吗?

提前感谢您的帮助, 马吕斯

【问题讨论】:

ImageMagick 的页面大小不是 a4x5x5。使用 -resize 595 x 842 ... -extent 595 x 842 【参考方案1】:

如果你想保持原来的分辨率(无损)你可以试试下面的命令:

convert png.png -background white -page a4 myoutput.pdf

基于之前发表的评论:https://***.com/a/24573341/6747994

@m4tx 此命令仅在图片的分辨率高于 500x800 像素时才有意义,它不会放大,以避免像素化缩略图。

【讨论】:

对不起,我今天再次检查,现在它似乎可以工作了。我不知道出了什么问题,我什至使用了 shell 历史记录中完全相同的命令。不幸的是,我无法撤回反对票,因为它现在已锁定。 看起来它实际上并没有将小图像放大以适应整个页面。 您需要指定-density 以避免使用“真实尺寸”打印时出现任何问题。 ***.com/a/55125655/376454 使用这个我得到的图像是风景而不是原来的肖像 @Wok 使用-density 72 我得到的图像小于 A4 页面。如果我删除它,那么它的大小是正确的,即与 A4 页面相同。【参考方案2】:

你需要指定密度:

convert -density 80 -page a4 input_A.jpg input_B.jpg output.pdf

否则,使用“实际尺寸”而不是“适合”打印时可能会出现问题。我使用了公共打印机,无法选择“适合”,必须选择“实际尺寸”,在这种情况下,打印的页面只是我想要打印的页面的一部分。

【讨论】:

如果您定义 -page a4 它会缩小图像以适应 A4-PDF。如果您使用原始尺寸打印,则纸张为 A4,与密度无关。如果你想以不同的尺寸打印它,你不应该使用 fit 也不应该使用 -density,你应该改变 -page .... . 没有。如果不指定密度,即使指定A4页面,页面的相关部分也不一定是A4,可能是A4页面中间的一个小矩形。尝试使用“实际尺寸”而不是“适合”打印,您会自己看到。我知道,我已经做到了,而且我没有弄乱 A4 以外的格式。用相机拍照,然后转换成 PDF。 我觉得问题是JoKalliauer只讲页面格式(确实是A4纸),我讲的是页面中的内容(意思是我要图片的内容按预期填充 A4 纸)。【参考方案3】:

在 *** 的某个地方找到了这个:

convert *.jpg -resize 1240x1753 \
                      -extent 1240x1753 -gravity center \
                      -units PixelsPerInch -density 150x150 multipage.pdf

【讨论】:

-gravity 应该在 -extent 之前 谢谢。正是我一直在寻找的! 这正是我所需要的——谢谢!【参考方案4】:

您可以使用 ImageMagick 转换为 pdf

convert png.png myout.pdf

但使用 pdfjam 而不是 ImageMagick 来调整页面大小

pdfjam --paper a4paper --outfile myoutA4.pdf myout.pdf

pdfjam 提供其他选项,可能适合您的需求。

【讨论】:

谢谢,这是唯一适合我的解决方案。将彩色 tiff 文件转换为 pdf 时,我必须使用 pdfjam 将图像大小固定为 A4 页面大小。【参考方案5】:

感谢ImageMagick support forum 我能够找到解决方案:

convert image.tif -resize 575x823^> -gravity center -background white -extent 595x842 image.pdf

如果出现错误,请尝试:

convert image.tif -resize 595x842^\> -gravity center -background white -extent 595x842 image.pdf

【讨论】:

你可能会像这样逃避 >:-resize 575x823^\> 谷歌搜索把我带到了这里,因为这个线程的标题很笼统。对于简单的使用,选项-page a4 已经自动完成了很好的工作:convert file-pattern*.jpg -page a4 output.pdf 如果图片比较小,又想调整大小,请使用-page 'A4<'

以上是关于ImageMagick:将图像转换为 A4 页面大小的 PDF,图像适合页面的主要内容,如果未能解决你的问题,请参考以下文章

ImageMagick 未授权将 PDF 转换为图像

ImageMagick 命令行:将 PDF 转换为高清图像

Imagemagick在将pdf转换为图像时删除上部内容

使用 ImageMagick 将 gif 转换为 png 时出现“转换:不正确的图像标题”错误

ImageMagick 在将 PSD 文件转换为 GIF、PNG、JPG 文件时可以在多大程度上保留剪切路径?

ImageMagick:将PDF转换为图像