如何使用pdftk和/MediaBox裁剪PDF边距

问题描述:

我使用pdftk解压缩PDF,然后将其作为文本文件打开.
我想编辑/MediaBox 字段,在我的情况下

I used pdftk to uncompress a PDF and then opened it as a text file.
I want to edit the /MediaBox field, which is in my case

/MediaBox [0 0 612 792]

例如,我想减少页边距

/MediaBox [100 0 512 792]

不幸的是,它不起作用.我可以将0更改为29,但是不能放置100.

Unfortunately it doesn't work. I can change the 0 into a 2 or a 9 but I cannot put 100 for instance.

知道为什么吗?

使用 sed 替换 任何 出现

use sed to replace any occurrence

sed 's/MediaBox \[0 0 612 792*/MediaBox \[100 0 512 792]/g'<in.pdf >out.pdf

podofobox (在 podofo实用程序内部)

无需先解压缩 pdf流(根据pdftk的需要)

without needing to uncompress pdf streams first (as needed with pdftk)

podofobox in.pdf out.pdf media 10000 0 51200 79200

如您所见,podofobox使用MediaBox值乘以100,因为它的标度是一个约数,因此,您只需在您可以在MediaBox中读取的值上添加两个零( 00 )字段

as you can see, podofobox uses MediaBox values multiplied by 100, since its scale is a sub multiple, so, you need simply to add two zeroes (00) to values you can read in MediaBox field