2017-02-21 81 views
0

我有一个PDF文件,需要使用此命令GS将风景改为肖像。方向开关不改变方向。是否有需要添加的额外设置?Ghostscript改变了从风景到肖像的方向

::Path to your Ghostscript EXE 
set GSC="C:\Program Files (x86)\gs\gs9.16\bin\gswin32.exe" 

%GSC% -sDEVICE=pdfwrite -sOutputFile="D:\TRANS\PDF\2_ZNOR_00000000000000000070.pdf" -dNOPAUSE -dEPSCrop -c "<</Orientation 3>> setpagedevice" -f "D:\TRANS\PDF\1_ZNOR_00000000000000000070.pdf" 

回答

0

您在那里使用的大多数开关根本没有效果,而且您​​也没有做任何事情来旋转PDF文件。

首先要注意的是,Ghostscript对这项工作来说确实是错误的工具,它并不是修改 PDF文件,它会生成全新的文件。该过程描述如下:here

如果输入是EPS文件,-dEPSCrop开关只有一个效果,否则它什么也不做。

setpagedevice的操作数不正确,当setpagedevice需要字典<<>>时,您传递一个空的十六进制字符串<>。即使这样空字典也不会做任何事情。

我希望你打算把<</Orientation 1>> setpagedevice,但实际上这只是一个媒体匹配请求。为了让Ghostscript创建一个旋转的PDF文件,你将不得不改变媒体大小,将其设置为固定,并设置-dFitPage。您还必须将AutoRotatePages开关设置为None,以防止输出的自动重定向,以使文本处于水平状态。

由于您没有提供PDF文件进行查看,也没有声明其媒体大小,我只能猜测大小。然而,像

gswin32c.exe -sDEVICE=pdfwrite -sOutputFile=new.pdf -dDEVICEHEIGHTPOINTS=612 -dDEVICEWIDTHPOINTS=792 -dFitPage -dAutoRotatePages=/None input.pdf 
+0

PDF页面大小是11.00x8.5插件,什么是dDEVICEHEIGHTPOINTS和dDEVICEWIDTHPOINTS开关? –

+0

DEVICE * POINTS开关将媒体设置为固定维度(我忘了添加-dFIXEDMEDIA,您也需要这样做)。这**是全部在文档中。如果你想改变11x8.5到8.5x11,那么你需要转置数字,WIDTH = 612 HEIGHT = 792。 – KenS

+0

感谢您的帮助@KenS,我能够旋转页面,但它在顶部被截断,页面大小为8.5x8.5。 –