关于linux:使用PDFTK或类似文件合并时为PDF文件增加边距

Add margin to PDF file when merging using PDFTK or similar

我在Linux服务器上的文件夹中保存了大量的半页大小的PDF图纸。 该站点的用户将希望从其中的一个子集创建一本小册子。 小册子将被装订,因此,集合的偶数页将在右侧需要更多页边距,奇数页将在左侧需要更多页边距。 500个页面中的一个集合中最多可以包含200个页面,因此我不想重新生成每个页面来设置它的页边距。 通过DOMPDF运行内容将花费太多服务器时间。 仅使用PDFTK构建文档即可。

我想从一个居中的PDF文件中将文档与PDFTK合并,并为奇数页或偶数页添加适当的边距。

如果不是PDFTK,那么还有其他工具可以完成这项工作吗?


如果使用ubuntu,则可以安装pdfcrop

1
sudo apt-get install -y pdfcrop

尽管其名称,pdfcrop可以选择添加边距:

1
pdfcrop --margin '29 0 29 0' input.pdf output.pdf

(注意:单位为bp。72bp = 1英寸。29bp约为1厘米。)

然后,使用pdfjam进行左右页面的偏移技巧。

1
pdfjam --twoside --offset '1cm 0cm' file.pdf

注意:pdfcrop的某些pdf文件确实存在问题。 (!!!错误:Ghostscript退出,错误代码139!)。


如果您仍然对此感兴趣,则应该查看pdfjam,它可以偏移和剪切pdf。 关于您的特定问题,您可能会做类似的事情

1
pdfjam --twoside --offset '2cm 0cm' file.pdf

这样会将偶数页向右移动2厘米,将奇数页向左移动。
pdfjampdflatexpdfpages程序包的前端。


即使有些晚,但它可能会对某人有所帮助。 作为对@ElkeSpaak评论的回应,它是软件包texlive-extra-utils

1
2
dpkg-query -S /usr/bin/pdfcrop
texlive-extra-utils: /usr/bin/pdfcrop