使用ImageMagick将高图像裁剪为具有相同宽度动态高度的A4 PDF页面

5
如何将一个名为tall-dynamicheight-screenshot.png的高动态高度截图转换为一个多页A4文件的onefile.pdf,以便在打印时可读性更佳?
例如:

enter image description here

转换为A4页面

enter image description here

因此,当我们打印时,它会像这样

enter image description here

不喜欢(难以阅读)

enter image description here

2个回答

2

这或许是一个粗略的第一步 - 尽管它没有寻找好的位置(白色空间)来分割页面,所以它会在你的第一页底部切割图像:

convert article.jpg -resize 2480x -crop 2480x3508 +repage result.pdf

enter image description here


切割的图像很好,但第二页为什么有空白?这背后是否有逻辑?还是因为居中的原因? - Adam Ramadhan
我在第二页顶部没有得到空白。正如Mark所说,它穿过图像并在第二页顶部开始图像。预览不代表我得到的结果。您使用的ImageMagick版本和平台是什么?您使用的libjpeg版本是什么?我在IM 6.9.9.4和IM 7.0.6.4上进行了测试,没有得到任何空白。对于IM 7,请使用magick代替convert。 - fmw42
哦,我明白了,它是居中的。在输出文件名之前添加“-gravity north”。如果这不起作用,请在输出文件名之前添加“-gravity north -background white -extent 2480x3508”。 - Mark Setchell

1
在imagemagick中,您可以裁剪多个页面。但这取决于您是否想保留原始大小还是将宽度调整为符合A4。A4文件尺寸为595x842。
如果您想保持原始尺寸并创建多页PDF,则会以原始分辨率获得12页。
convert V0twr.jpg -crop 595x842 +repage onefile1.pdf

如果您想将大小调整为 A4 的宽度,然后进行裁剪,则会得到降低分辨率的 2 页。
convert V0twr.jpg -resize 595x -crop 595x842 +repage onefile2.pdf

你可以选择其他的中间分辨率来调整大小,如果你希望达成妥协,比如说A4纸的宽度加倍=2*595=1180。

1
尝试了一下,但为什么它不从顶部进行垂直裁剪?但当我使用repage进行尝试时,仍然存在白色空间的问题。 - Adam Ramadhan
你的IM版本和平台是什么?使用-crop而没有偏移可能比非常旧的ImageMagick版本更流行。请参见http://www.imagemagick.org/Usage/crop/#crop_tile。你的输入图像是jpg还是其他格式,如png。PNG可能已经具有带有偏移的虚拟画布。因此,在读取输入后,您可以立即添加+repage。 - fmw42
7.0.5-5 Q16 x86_64 2017-04-25,我看到了,是的,可能是因为居中导致的空格。 - Adam Ramadhan
大家好,如果还有人在,请问如何将大小调整为A4?但是我发现这样会失去分辨率(文字不清晰)。有什么解决办法吗? - mario
如果您从光栅图像(JPG、PNG等)开始,并将其放大到A4大小,即使您将其保存为PDF,它也会变得模糊。您究竟想做什么,使用什么类型的起始和结束图像以及什么尺寸? - fmw42

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接