pdf - 将 postscript 转换为 a4 格式 pdf

标签 pdf postscript xmgrace

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

实际上,图像最终出现在我的 .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)也以另一种方式解决了问题。 由于(在我最初的猜测中)终端配置,xmgrace 的 .ps 输出很难使用,所以我想我不会再使用它们了。

最佳答案

您需要指定(对 Ghostscript)-dEPSFitPage 或者您需要让您的输出请求一个媒体大小(您没有说是否有,而且您没有发布大部分程序所以我无法判断).

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

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

关于pdf - 将 postscript 转换为 a4 格式 pdf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34179436/

相关文章:

python - 将字符串列表转换为正确的类型

Javascript:如何从 HTML 表单或 div 创建 pdf 文件

javascript - 从 PDF 中提取字体名称

pdf - 是否可以在Ghostscript中向PDF的每一页添加水印

plot - 如何在终端中使用 xmgrace 绘制某些列?

Xmgrace:将多列文件中的所有列绘制为第一个的函数

character - xmgrace中的各种字符

java - pdfbox - 文档自签名后已被更改或损坏

java - lib 升级后 iText pdf 功能损坏 - 无法合并表格

pdf - 将 .ps 转换为 .pdf 并删除单个页面