使用Ghostscript裁剪PDF /添加裁剪框

时间:2011-04-26 23:55:25

标签: pdf crop ghostscript

我需要裁剪几百个PDF文件 - 我愿意裁剪实际文档,或者只是为每个文档添加裁剪框,以便在打开PDF时显示正确的可视区域。

如何使用Ghostscript(v8.71)执行此操作?我发现了这个:

gs -sDEVICE=pdfwrite -sOutputFile=marked.pdf [/CropBox [54 54 1314 810] /PAGES pdfmark original.pdf

我试过这个(以及我能想到的所有变种),但我总是得到一个错误:

Error: /undefinedfilename in ([/CropBox)

我尝试过移动命令的参数,但似乎没有任何效果。有谁知道如何实现这一目标?

更新:修正语法后仍然没有裁剪框,​​请参阅结果 -

结果:pdfinfo -box -f 1 -l 3 original.pdf

Producer:       PDFlib 7.0.2 (PHP5/Linux)
CreationDate:   Wed Oct 21 11:41:04 2009
ModDate:        Wed Oct 21 13:38:22 2009
Tagged:         no
Pages:          1
Encrypted:      no
Page    1 size: 1423 x 918 pts
Page    1 MediaBox:     0.00     0.00  1423.00   918.00
Page    1 CropBox:      0.00     0.00  1423.00   918.00
Page    1 BleedBox:    54.00    54.00  1369.00   864.00
Page    1 TrimBox:      0.00     0.00  1423.00   918.00
Page    1 ArtBox:       0.00     0.00  1423.00   918.00
File size:      914373 bytes
Optimized:      no
PDF version:    1.4`


结果:pdfinfo -box -f 1 -l 3 marked.pdf

Producer:       GPL Ghostscript 8.71
CreationDate:   Wed Apr 27 15:43:38 2011
ModDate:        Wed Apr 27 15:43:38 2011
Tagged:         no
Pages:          1
Encrypted:      no
Page    1 size: 1423 x 918 pts
Page    1 MediaBox:     0.00     0.00  1423.00   918.00
Page    1 CropBox:      0.00     0.00  1423.00   918.00
Page    1 BleedBox:     0.00     0.00  1423.00   918.00
Page    1 TrimBox:      0.00     0.00  1423.00   918.00
Page    1 ArtBox:       0.00     0.00  1423.00   918.00
File size:      392382 bytes
Optimized:      no
PDF version:    1.4

更新:发布的示例PDF -

able_to_crop.pdf
cannot_crop.pdf

1 个答案:

答案 0 :(得分:9)

您正走在正确的轨道上,尝试使用pdfmark / Ghostscript添加CropBox。但是你的语法不是100%正确。

请改为尝试:

 gs \
  -sDEVICE=pdfwrite \
  -o marked.pdf \
  -c "[/CropBox [54 54 1314 810] /PAGES pdfmark" \
  -f original.pdf