我可以使用Ghostscript将文本(传真)标题覆盖到PDF和/或TIFF上吗



我正在编写一个应用程序,用于传真最终用户提供的文档(许多支持的类型)。一个要求是,最终用户还可以提供用作自定义传真头的文本。

我一直在使用Ghostscript将PDF渲染为TIFF,到目前为止效果很好,但我还没有找到在PDF顶部覆盖自定义标题的简单方法。我尝试了一些建议:

  • 如何使程序在postscript文件上覆盖文本
  • 在linux中,如何在postscript或pdf文件的每页底部添加页脚
  • 使用正则表达式自动向PDF文件添加注释
  • 对PDF文件进行盖章,并控制盖章文件的位置

运气不佳。

我已经使用ImageMagick成功地通过其他工具将文档渲染为TIFF,并且我知道ImageMagick可以自己将PDF渲染为TIFF。然而,我想坚持使用Ghostscript,因为根据我的经验,它表现得更好,呈现出更清晰的TIFF。

这可能使用Ghostscript和PS助手脚本吗?

编辑:

Ghostscript(v9.04)没有引发任何错误。例如:

gswin64c -dSAFER -dBATCH -dNOPAUSE -dPDFFitPage -sDEVICE=tiffg3 ^
    -sOutputFile=goofy.tif ^
    -c "/Courier findfont 12 scalefont setfont 50 765 moveto (header text) show" ^
    -f goofy.pdf

生成原始PDF的TIFF,但没有我尝试添加的文本。如果我将showpage附加到postscript的一行中,它(我想是可以预见的)会打印一个新的、除了页眉之外的空白页,这对我没有多大帮助。

我将使用另一个命令行工具与Ghostscript组合来执行此任务。此工具为pdftk.exe。然后使用三步方法:

  1. Ghostscript的任务是创建一个标题文本为
    的页面(否则为空)gswin64c.exe^-o header.pdf^-sDEVICE=pdfwrite^-c"Courier findfont 12 scalefont setfont"^-c"50 765 moveto(页眉文本)show showpage"
  2. pdftk的任务是将带有文本标题的PDF文件覆盖在原始PDF上(背景):
    pdftk.exe傻瓜.pdf后台头.pdf输出傻瓜带头.pdf
    pdftk.exe goffy.pdf stamp header.pdf输出goffy with header.pdf
  3. 最后一步是再次使用Ghostscript来创建最终的TIFF输出:
    gswin64c.exe^-dPDFIt页面^-o愚蠢的头脑。tif^-sDEVICE=tiffg3^愚蠢的标题.pdf

我刚刚尝试了完全相同的方法,结果完全相同。然后,我从命令行参数中删除了-dSAFER,它就像一个魅力。

我认为掺杂的方式是在进行任何转换之前,将PDF上需要的内容附加到PDF文件本身。PDF filew格式的设计是为了可以在文件末尾附加额外信息(甚至是前几页的信息)。

不幸的是,我从来没有做过这件事,所以我不能平静地告诉你你需要做什么——也许有一个编程语言的aome PDF编辑库可以让这项任务更容易——否则你就必须自己创建PDF文件。(从某种输入格式呈现PDF的传统库无法做到这一点,因为你必须在现有文档的结构中工作)-但也许看看PDF规范可以启发你了解这种方法,并检查它是否值得:http://www.adobe.com/devnet/pdf/pdf_reference_archive.html

另一种方法是处理文件的"另一端":使用图像处理库在渲染后的TIFF文件上布局文本。当然,只有当页面上有固定的空间供您添加信息时,这才有可能。

很抱歉无法提供完整的解决方案

最新更新