我正在使用GhostScript来改变DPI并使用exec()函数从PHP调整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页面的任何类型的旋转?
P.S。
初始PDF的第一页:
没有-dFixedMedia
处理后的PDF的第一页:
使用-dFixedMedia
处理后的PDF的第一页:
更新
以下是此单页PDF文件的链接: PDF-File
答案 0 :(得分:2)
如果没有看到示例文件,真的无法分辨出发生了什么。规范pdfwrite将保留输入文件中的各种框,尤其是MediaBox。
如果是我,我会从命令行中删除-dPDFSETTINGS开始,这会设置 lot 选项。我会单独设置我想要的选项。请注意,因为在命令行中有最后一个,它可能会覆盖任何先前的设置。
如果将AutoRotatePages设置为false,则pdfwrite不会尝试任何类型的输出旋转。
答案 1 :(得分:0)
dPDFFitPage
缩放并旋转以最适合设备尺寸。
在DataFrame.insert
处查看dPSFitPage
选项