按页分割pdf文件为多个

本文介绍把单个pdf文件按页分割为若干个的方法

按页分割以后的每个pdf文件含有1页内容。选择这些pdf中的部分,按 多个pdf文件拼接或合并为单一文件 https://zhuanlan.zhihu.com/p/655675268 的方法,就可以实现从某个pdf文件中选择任意页面重新组合为新的pdf。

方法1 ImageMagick

ImageMagick https://imagemagick.org/ 有个工具convert,适合做各种格式转换,也可以用于切割PDF文件。

用法示例如下,命令行:

c:\tools\ImageMagick\convert -density 300 input.pdf[1] x-%0d.pdf

c:\tools\ImageMagick\convert -density 300 input.pdf[1-3] x-%0d.pdf

c:\tools\ImageMagick\convert -density 300 input.pdf[0] x-%0d.jpg

其中

(1)c:\tools\ImageMagick\convert 是可执行程序及所在路径;

(2)-density 300 是分辨率,单位DPI 像素每英寸;

(3)input.pdf 是待分割的输入文件;

(4)input.pdf 后面的[1]或[1-3] 方括号中是提取的页码或页码范围,从0开始计数;

(5)x-%0d.jpg 是输出的一系列文件的命名规则,x- 1位数字 .jpg。

下述指令

c:\tools\ImageMagick\convert -density 300 input.pdf[1-3] x-%0d.pdf

会提取 input.pdf 的第1、2、3页,生成如下新文件。

x-1.pdf
x-2.pdf
x-3.pdf

方法2 GhostScript

另一个方法速度更快,生成文件更小,文字可选。使用工具是 GhostScript,简称gs,在https://www.ghostscript.com/ 下载。

用法示例如下,命令行:

"C:\Program Files\gs\gs9.55.0\bin\gswin64c.exe" -sDEVICE=pdfwrite -dSAFER -o output.%00d.pdf input.pdf

"C:\Program Files\gs\gs9.55.0\bin\gswin64c.exe" -dNOPAUSE -dQUIET -dBATCH -sOutputFile=output%00d.pdf -dFirstPage=1 -dLastPage=3 -sDEVICE=pdfwrite input.pdf

"C:\Program Files\gs\gs9.55.0\bin\gswin64c.exe" -dNOPAUSE -dQUIET -dBATCH -sOutputFile=output%00d.pdf -sPageList=1,2,4-7 -sDEVICE=pdfwrite input.pdf

其中

(1)命令 "C:\Program Files\gs\gs9.55.0\bin\gswin64c.exe" 是在我机器上可执行程序的路径和文件名;

(2)输出格式等 -sDEVICE=pdfwrite -dSAFER 和 -dNOPAUSE -dQUIET -dBATCH 等,原样照抄,我们不讨论这些细节;

(3)输出文件 -o output.%00d.pdf 或 -sOutputFile=output%00d.pdf输出文件的一系列文件命名规律,这里是 output. 至多2位数字.pdf;

(4)提取页面范围 -dFirstPage=1 -dLastPage=3 或 -sPageList=1,2,4-7,分别指定起始页第1页(从第1页开始计数)、最后一页(第3页),或者 1,2,4-7 表示 第1页、第2页、第4页~第7页;

(5)输入文件 input.pdf。

附,合并多个PDF文件的方法在这里 https://zhuanlan.zhihu.com/p/655675268

 

Leave a Reply

Your email address will not be published. Required fields are marked *