将 postscript 转换为 a4 格式 pdf

Converting postscript to a4 format pdf

我正在尝试转换使用 xmgrace 制作的 .ps 文件(您可以猜到这是一条数据曲线)但是当我使用 ImageMagick 通过转换命令或 ps2pdf 与选项 -format a4 或 -sPAPERSIZE=a4 我最终遇到了同样的问题。

实际上,图像最终出现在我的 .pdf 文件的左上角,而页面的近 3/4 是空白的。我想调整它的大小,让它占据整个页面。

在 xmgrace 的打印设置中,我同时使用了 A4 格式和自定义默认格式 2262x1729 pix,两者最终得到了相同的结果。

.ps文件的文件头如下:

%!PS-Adobe-3.0
%%BoundingBox: 0 0 415 543
%%LanguageLevel: 2
%%Creator: Grace-5.1.22
%%CreationDate: Wed Dec  9 13:21:52 2015
%%DocumentData: Clean8Bit
%%Orientation: Landscape
%%Pages: 1

我看到触摸边界框限制可能是一种方法,但它似乎有风险并且不能解决问题,因为我必须对每个文件都这样做... 我们的机器运行在 RedHat 上,实际上,我的主管(编译和使用同一台机器)没有像我这样的问题,也不能告诉我为什么。

我怀疑我的终端设置是问题的一部分,但我不确定。

编辑:谢谢 KenS 的回答。我实际上设法使用 gs 来解决关于我得到的输出的问题,但我还发现使用 xmgrace 和 epstopdf 的 .eps 输出(而不是 .ps 和 ps2pdf 就像我的主管所做的那样)也以另一种方式解决了这个问题。 .ps 由于(我最初的猜测)终端配置,xmgrace 的输出很难使用,所以我想我不会再使用它们了。

您需要指定(对 Ghostscript)-dEPSFitPage,或者您需要让您的输出请求媒体大小(您没有说是否有,而且您没有 post 大多数程序所以我不知道)。

更改 BoundingBox 注释将无济于事。要么 PostScript 解释器不会对它们做任何事情(这是允许的,它们是注释),要么它将使用它们来设置页面大小,但是由于您没有更改内容,您最终会遇到同样的问题。

您需要缩放内容(也可能翻译原点),如果程序请求媒体,您仍然可以让 Ghostscript 缩放它,但您需要设置 -dFIXEDMEDIA 和 -dFitPage 选项。 (设置 -dFitPage 可能是最简单的,即使文件是 EPS 而不是 PostScript)。