You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何通过Linux/macOS命令行将单页长幅PDF转换为多页A4规格PDF?

如何通过Linux/macOS命令行将单页长幅PDF转换为多页A4规格PDF?

嘿,我来给你分享几个在Linux/macOS命令行上搞定这个需求的实用法子,亲测靠谱!

方法一:用pdfposter(最简便的专用工具)

这工具就是专门干PDF分页切割的,操作起来超省心:

  • 先安装它:
    • Linux Debian/Ubuntu系:sudo apt install pdfposter
    • Linux RHEL/CentOS系:sudo dnf install pdfposter
    • macOS:用Homebrew装 brew install pdfposter
  • 直接跑转换命令就行:
    pdfposter -p A4 input.pdf output.pdf
    
    它会自动识别原长页的尺寸,把内容分割成若干张A4页面,排版也会自动对齐,完全不会乱。要是遇到原页面尺寸识别有问题的情况,加个-m auto参数强制自动检测就行:
    pdfposter -m auto -p A4 input.pdf output.pdf
    

方法二:用Ghostscript(系统大概率自带)

要是不想装新工具,Ghostscript很多Linux/macOS系统默认就预装了,用它也能搞定:

gs -sDEVICE=pdfwrite -dNOPAUSE -dBATCH -dSAFER -sPAPERSIZE=a4 -dFIXEDMEDIA -dPDFFitPage=false -dAutoRotatePages=/None -o output.pdf input.pdf

给你解释下关键参数:

  • -sPAPERSIZE=a4:明确指定目标纸张是A4
  • -dFIXEDMEDIA:强制锁定纸张尺寸,不会跟着内容乱改
  • -dPDFFitPage=false:禁止把整个长页缩到单张A4上,而是按A4大小分页切割
  • -dAutoRotatePages=/None:避免页面自动旋转,保持原内容的方向

方法三:用qpdf配合其他工具(如果你坚持用qpdf)

qpdf本身没有直接的分页功能,但可以绕个弯实现:先把PDF转成图片,切割后再转回PDF,步骤稍繁琐但能用:

  1. 用qpdf把单页PDF转成图片(这里用PNG格式):
    qpdf --to-image input.pdf temp.png
    
  2. 用ImageMagick的convert工具把长图片切割成A4大小的小图:
    convert temp.png -crop 595x842@ +repage temp_%02d.png
    
    这里595x842是72dpi下A4的像素尺寸,+repage用来重置图片的页码信息,避免排版混乱
  3. 把切割后的图片重新合并成PDF:
    convert temp_*.png output.pdf
    
    最后别忘了清理临时文件:rm temp*.png

个人最推荐用pdfposter,一步到位,完全不用操心细节!

备注:内容来源于stack exchange,提问作者halloleo

火山引擎 最新活动