我的电脑运行的是 Windows 7,安装了 MikTeX 2.9 和 GhostScript 9.02。
我仍然不明白为什么我必须调用gswin64c.exe
而不是ps2pdf.exe
将 ps 转换为 pdf?
我想要使用的开关是
-sPAPERSIZE=a4 -dSAFER -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=filename.pdf -c save pop -f filename.ps
当我使用ps2pdf.exe
上述开关时,出现如下错误消息。
根据Philippe的评论的实验结果如下。
无效的语法:
ps2pdf -sPAPERSIZE=a4 in.ps out.pdf
ps2pdf -sPAPERSIZE#a4 in.ps
工作语法:
ps2pdf -sPAPERSIZE#a4 in.ps out.pdf
ps2pdf in.ps out.pdf
顶部边距被裁剪。ps2pdf in.ps
顶部边距被裁剪。
答案1
您不必gswin64c
直接使用。ps2pdf
应该可以。对我来说它确实有效。(TeX Live 2011)
另一方面,ps2pdf
命令实际上是一个脚本(ps2pdf.exe
在 TeX Live 中调用 Lua 脚本ps2pdf.tlu
),它调用 GhostScriptgswin32c.exe
等gswin64c.exe
。
Usage: ps2pdf [options] (input.[e]ps|-) [output.pdf]
但是,您使用的选项确实会失败。在脚本-dSAFER -dBATCH -dNOPAUSE -sDEVICE=pdfwrite
中定义ps2pdf
,您不需要它们。-sOutputFile
也可以替换。但是,如果您使用它们是安全的。
我不太清楚这是什么-c save pop
意思。看来这个选项导致了问题。没有这个选项,一切都正常。