6

我正在使用 GhostScript 使用 exec() 函数从 PHP 更改 DPI 和调整 PDF 文件的大小。我的命令行代码如下所示:

gs  -o out.pdf  -sDEVICE=pdfwrite  -dDEVICEWIDTHPOINTS=800 -dDEVICEHEIGHTPOINTS=1000 -dPDFFitPage -dPDFSETTINGS=/ebook in.pdf

但是在此处理之后,我的一个 PDF 第一页被旋转和裁剪。如果我添加-dFixedMedia参数,它仍然会旋转但不会被裁剪。但在这种情况下,其他一些页面将被旋转。

我也尝试过......并且-dOrient1=false......这一切都没有奏效......也许我没有正确使用它......-dOrient1=true-dAutoRotatePages=/None

是否可以防止/禁止所有 PDF 页面的任何类型的旋转?


附言

初始 PDF 的第一页:

最初的

处理后的 PDF 第一页没有-dFixedMedia之后1

处理后的 PDF 的第一页 WITH -dFixedMedia之后2


更新:

这是指向这一页 PDF 文件的链接: PDF-File


4

2 回答 2

2

如果不查看示例文件,就不可能知道发生了什么。通常 pdfwrite 将保留输入文件中的各种框,尤其是 MediaBox。

如果是我,我会先从命令行中删除 -dPDFSETTINGS,这会设置很多选项。我会单独设置我想要的选项。请注意,因为您在命令行中有最后一个,它可能会覆盖任何先前的设置。

如果将 AutoRotatePages 设置为 false,则 pdfwrite 不会尝试对输出进行任何类型的旋转。

于 2013-04-15T06:55:20.260 回答
0

dPDFFitPage缩放和旋转以最适合设备尺寸。

请参阅dPSFitPage此处的选项https://www.ghostscript.com/doc/current/Use.htm

于 2019-09-17T13:26:34.533 回答