问题是我的打印机总是剪掉 PDF 文件边框上的某些部分。通常这不是问题,因为大多数 PDF 的边框已经有一些空间。但现在我需要打印一些没有这样空间的文档。
是否有 Linux 命令行工具(或批处理工具)可以将每个页面的内容大小调整为原始大小的 95%,同时保留页面尺寸?
编辑:我的四个侧面都需要更多空间。
答案1
看看这个博客文章从 2008 年开始,展示了如何使用 Ghostscript 和这个 shell 脚本来做到这一点pdf量表这对你来说很好地概括了它。
该博客给出了 A4 纸上 90% 比例的示例:
gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -dSAFER \
-dCompatibilityLevel="1.3" -dPDFSETTINGS="/printer" \
-dSubsetFonts=true -dEmbedAllFonts=true \
-sPAPERSIZE=a4 -sOutputFile="out.pdf" \
-c "<</BeginPage{0.9 0.9 scale 29.75 42.1 translate}>> setpagedevice" \
-f in.pdf
脚本将其简化为
pdfScale -s 0.9 in.pdf out.pdf
以及自动检测媒体页面尺寸。其他重量级工具包括pdfjam
和pdfedit
。
自 2017 年 2 月编写此答案以来,pdfScale 脚本已得到很大增强。有关所有选项,请参阅上面的链接。
答案2
使用“cpdf”命令行工具缩放pdf的内容
cpdf INPUT.PDF -scale-contents "0.9" -o OUTPUT.PDF