gpt4 book ai didi

pdf - 使用 Ghostscript 9.01 裁剪 PDF

转载 作者:行者123 更新时间:2023-12-03 07:39:06 24 4
gpt4 key购买 nike

我不是程序员,但想学习如何使用 Ghostscript 裁剪 PDF。

我已经在我的机器上安装了 Ghostscript 9.01。

请指导我逐步(从调用 Ghostscript 开始)使用特定坐标裁剪 PDF。

我对 Ghostscript 还很陌生。

最佳答案

首先,请注意 PDF 的测量单位与 PostScript 相同:称为 [pt]。

72 points == 1 inch == 25.4 millimeters

假设您的页面大小为 A4。那么媒体尺寸是:

595 points width  == 210 millimeters
842 points height == 297 millimeters

假设您要裁剪:

   left edge: 24 points == 1/3 inch ~=  8.5 millimeters
right edge: 36 points == 1/2 inch ~= 12.7 millimeters
top edge: 48 points == 2/3 inch ~= 17.0 millimeters
bottom edge: 72 points == 1 inch ~= 25.4 millimeters

那么你的 Ghostscript 命令行是这样的(在 Windows 上):

gswin32c.exe                     ^
-o cropped.pdf ^
-sDEVICE=pdfwrite ^
-c "[/CropBox [24 72 559 794]" ^
-c " /PAGES pdfmark" ^
-f uncropped-input.pdf

或者在 Linux 上:

gs                               \
-o cropped.pdf \
-sDEVICE=pdfwrite \
-c "[/CropBox [24 72 559 794]" \
-c " /PAGES pdfmark" \
-f uncropped-input.pdf

但是,这可能无法可靠地适用于所有类型的 PDF [1]。在这些情况下,您应该尝试以下命令:

gswin32c.exe                 ^
-o cropped.pdf ^
-sDEVICE=pdfwrite ^
-dDEVICEWIDTHPOINTS=595 ^
-dDEVICEHEIGHTPOINTS=842 ^
-dFIXEDMEDIA ^
-c "24 72 translate" ^
-c " 0 0 535 722 rectclip" ^
-f uncropped-input.pdf

gs                           \
-o cropped.pdf \
-sDEVICE=pdfwrite \
-dDEVICEWIDTHPOINTS=595 \
-dDEVICEHEIGHTPOINTS=842 \
-dFIXEDMEDIA \
-c "24 72 translate" \
-c " 0 0 535 722 rectclip" \
-f uncropped-input.pdf
<小时/>

[^] : 更具体地说:它不适用于带有自己的 /CropBox 的 PDF已经定义为特定值。一个肮脏的黑客方法是在运行之前使用文本编辑器更改所有需要 /cROPBoX (或类似的大小写更改)的页面的字符串 /CropBox上述 GS 命令。大小写更改有效地“解除”了裁剪框设置(不更改任何 PDF 对象偏移量,从而使现有的外部参照表无效),因此 PDF 渲染器不再考虑它。

关于pdf - 使用 Ghostscript 9.01 裁剪 PDF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6183479/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com