实现此目的的另一种方法是破解 postscript 文件本身。以前AI文件是 postscript文件,可以直接修改;我不知道那是不是真的了。所以你可能需要导出它。
为简单起见,我假设只有一个页面。因此,在最后会有一个对showpage 的调用(可能是通过另一个名称)。在 showpage 之前执行的任何绘图命令都会显示在页面上。
您可能需要重新初始化图形状态 (initgraphics),因为文档的其余部分可能让这一切变得有趣,预计显示页面会在任何人注意到之前清理干净。
要放置文本,您需要设置一种新字体(旧字体已被 initgraphics 无效)以点为单位测量位置(72 点/英寸,28.3465 点/厘米)。
/Palatino-Roman 17 selectfont %so much prettier than Times
x y moveto
(new text) show
要进行合并,您可以使用 perl:将文档的开头作为 HERE 文档发出,通过程序构造一些文本写入行,发出文档的尾部。这是generating postscript with PERL的示例
或者您可以使用-- 选项($gs -q -- program.ps arg1 arg2 ... argn)从命令行(使用ghostscript)获取数据。程序可以通过名为 /ARGUMENTS 的数组访问这些参数。
所以,假设你有一个漂亮的图形,一个可怕的小丑拿着一个大约 1 英寸宽、3 英寸高、左上角距离左侧 4 英寸、距离底部 4 英寸的空白标志。您可以将此代码插入到 ps 程序中,就在 showpage 之前。
initgraphics
/Palatino-Roman 12 selectfont
4 72 mul 4 72 mul moveto
ARGUMENTS {
gsave show grestore 0 -14 rmoveto
} forall
现在你可以让他说些有趣的事情了 ($gs -- clown.ps "On a dark," "and stormy night...")。