我想在每个由groff在Linux中使用postscript生成的pdf文件的底部添加一个“页脚”(归属信息)。我正在使用ps2pdf工具将文件从ps转换为pdf,因此我可以访问这两种格式。这两篇文章对我有些帮助:如何在Postscript/PDF中添加页码,如何使程序在postscript文件上叠加文本?。我不反对使用第一种方法,但我没有访问第一个脚本中提到的pdflatex实用程序,也没有在需要执行工作的机器上安装它的选项。
看起来第二种方法可能有效,但是我已经安装了8.15版本的Ghostscript,但是在手册页面(http://unix.browserdebug.com/man/gs/)上并没有列出许多标志。我认为我可以使用“-c”标志插入一些后置代码,即使它没有列出。无论如何,这里是两个我尝试失败的命令:
执行堆栈: %interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- false 1 %stopped_push 字典堆栈: --dict:1117/1686(ro)(G)-- --dict:0/20(G)-- --dict:102/200(L)-- 当前分配模式为本地 上一个操作系统错误: 2 ESP Ghostscript 815.02: 不可恢复的错误,退出代码1
看起来第二种方法可能有效,但是我已经安装了8.15版本的Ghostscript,但是在手册页面(http://unix.browserdebug.com/man/gs/)上并没有列出许多标志。我认为我可以使用“-c”标志插入一些后置代码,即使它没有列出。无论如何,这里是两个我尝试失败的命令:
gs -o output.pdf -sDEVICE=pdfwrite -g5030x5320 \ -c "/Helvetica-Italic findfont 15 scalefont setfont 453 482 moveto (test-string) show" \ -f input.ps
这给了我这个结果:
未知开关-o - 忽略 ESP Ghostscript 815.02 (2006-04-19) 版权所有(C) 2004 artofcode LLC,Benicia,CA。保留所有权利。 本软件不提供任何保证:有关详细信息,请参见PUBLIC文件。 错误:/undefinedfilename in (output.pdf) 操作数堆栈:执行堆栈: %interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- false 1 %stopped_push 字典堆栈: --dict:1117/1686(ro)(G)-- --dict:0/20(G)-- --dict:102/200(L)-- 当前分配模式为本地 上一个操作系统错误: 2 ESP Ghostscript 815.02: 不可恢复的错误,退出代码1
显然,-o标志存在问题,因此我进行了一些研究并尝试了以下语法:
gs -sOUTPUTFILE=output.pdf -sDEVICE=pdfwrite -g5030x5320 \ -c "/Helvetica-Italic findfont 15 scalefont setfont 453 482 moveto (test-string) show" \ -f input.ps
这将输出这个结果,并让我按回车键4次(也许输入的.ps文件有4页)
ESP Ghostscript 815.02 (2006-04-19) 版权所有 (C) 2004 artofcode LLC, Benicia, CA。保留所有权利。 此软件不提供任何保证:有关详细信息,请参阅文件PUBLIC。 找不到(或无法打开)字体文件/usr/share/ghostscript/8.15/Resource/Font/Helvetica-Italic。 找不到(或无法打开)字体文件Helvetica-Italic。 查询操作系统的字体文件... 未在系统中找到此字体! 用Helvetica-Oblique替换Helvetica-Italic字体。 从/usr/share/fonts/default/Type1/n019023l.pfb加载NimbusSanL-ReguItal字体...3742416 2168114 2083056 759694 1完成。 从/usr/share/fonts/default/Type1/n021023l.pfb加载NimbusRomNo9L-ReguItal字体...3781760 2362033 2365632 1015713 1完成。 从/usr/share/fonts/default/Type1/n021004l.pfb加载NimbusRomNo9L-Medi字体...3865136 2547267 2365632 1029818 1完成。 从/usr/share/fonts/default/Type1/n021003l.pfb加载NimbusRomNo9L-Regu字体...4089592 2759001 2365632 1032885 1完成。 将NimbusRomanNo9L-Regu字体用于NimbusRomNo9L-Regu。 >>显示页面,请按键继续<< >>显示页面,请按键继续<< >>显示页面,请按键继续<< >>显示页面,请按键继续<<看起来使用gs
将某些内容插入ps文件似乎很简单,但实际上证明它相当复杂...
showpage
,所以您只需要重新定义它,在调用/执行时不需要修改其它东西。 - U. Windl