我有一个pdf, pdfInfo:
pdfinfo -f 1 -l 1 -box book.pdf
Title: Hibaby book
Author: Hibaby.biz
Creator: HIBABY
Producer: TCPDF 5.9.193 (http://www.tcpdf.org)
CreationDate: Tue Mar 5 17:25:23 2013
ModDate: Tue Mar 5 17:25:23 2013
Tagged: no
Form: none
Pages: 21
Encrypted: no
Page 1 size: 595.276 x 841.89 pts (A4)
Page 1 rot: 0
Page 1 MediaBox: 0.00 0.00 595.28 841.89
Page 1 CropBox: 0.00 0.00 595.28 841.89
Page 1 BleedBox: 0.00 0.00 595.28 841.89
Page 1 TrimBox: 0.00 0.00 595.28 841.89
Page 1 ArtBox: 0.00 0.00 595.28 841.89
File size: 3771955 bytes
Optimized: no
PDF version: 1.7
在这个线程之后,我尝试用这个命令来调整大小并添加一个bleeBox:
gs -o output.pdf
-sDEVICE=pdfwrite
-r72
-dPDFA
-sProcessColorModel=DeviceCMYK
-dFIXEDMEDIA
-dDEVICEWIDTHPOINTS=667
-dDEVICEHEIGHTPOINTS=913
-c "[/ArtBox[36 36 631 877]"
-f book.pdf
我只得到一个稍微大一点的PDF,有正确的mediabox,但没有附加出血盒…我错过了什么?
pdfinfo -f 1 -l 1 -box output.pdf
Producer: GPL Ghostscript 9.06
CreationDate: Fri May 17 11:10:49 2013
ModDate: Fri May 17 11:10:49 2013
Tagged: no
Form: none
Pages: 21
Encrypted: no
Page 1 size: 595.276 x 841.89 pts (A4)
Page 1 rot: 0
Page 1 MediaBox: 0.00 0.00 667.00 913.00
Page 1 CropBox: 0.00 0.00 595.28 841.89
Page 1 BleedBox: 0.00 0.00 595.28 841.89
Page 1 TrimBox: 0.00 0.00 595.28 841.89
Page 1 ArtBox: 0.00 0.00 595.28 841.89
File size: 534004 bytes
Optimized: no
我不明白哪里出了问题:命令,语法还是我只是想让事情变得不可能谢谢你的帮助!
PDF版本:1.4
首先,在命令行中没有指定BleedBox。你确实提到了一个ArtBox,但这不是一回事。
其次,你不能随意地将/ArtBox粘贴到PostScript流中并期望它做任何事情。这个"[/ArtBox[36 36 631 877]"甚至不是有效的PostScript,因为你有不平衡的数组标记。
你的命令行应该改为
-c "[/ArtBox [36 36 631 877] /PAGES pdfmark" -f
除非你真的想要一个BleedBox,在这种情况下,你必须将/ArtBox替换为/BleedBox。
我最近自己也需要这个,但使用Ghostscript提出的解决方案不适合我。我创建了一个名为pdfboxer的小实用程序来完成此操作,该实用程序在下面使用Apache PDFBox。您可以从https://github.com/nicknux/pdfboxer下载源代码。
它允许你改变TrimBox, ArtBox, BleedBox和CropBox。
该实用程序的示例用法如下:
$ java -jar bin/pdfboxer-0.0.1.jar
-trimBox 7.200000,7.200000,504.000031,720.000000
-artBox 7.200000,7.200000,504.000031,720.000000
-sourceFile src/test/pdfs/UNTRIMMED_PDF.pdf
-destFile src/test/pdfs/TRIMMED_PDF.pdf