1

我正在生成一个 html 页面,它创建一些动态内容,转换为 ps,并通过 snailmail 发送出去。

文档的长度取决于页面开头附近动态生成的列表中有多少项目。这里的主要问题是让收件人的地址始终位于页面底部,以使其适合信件的地址窗口。

我在有关此特定案例的文档中找不到太多信息:http ://www.msweet.org/documentation/project1/HTMLDOC.html

我可以使用<!-- NEED x -->,但这本身并不能确保地址每次都保持在同一个位置,除非我们总是使用 2 页。HTMLDOC 中的“FOOTER”功能不解析 html,并且不适用于多个段落。(这不仅仅是页面底部我想要的地址,而是下面的所有内容,包括最后一个换行符“请返回此单...”)

有任何想法吗?我可以通过每次生成 2 页来完成这项工作,但这看起来很糟糕,而且浪费纸张。页面布局如下:


[标题左侧日期] [标题右侧徽标]

亲爱的 __________,

请退回以下物品:

  • 第 1 项
  • 第 2 项
  • ...
  • 第 n 项

请将设备退回:[Addr 1]

【长退货说明】

感谢您选择______,


退货单

[客户地址] <- 需要静态放置在页面上

(例: http: //imgur.com/rbta0jL 红框为地址,需在页面下方)

4

1 回答 1

2

首先,您为什么还要生成 PostScript 输出并通过蜗牛邮件发送出去?现在大多数人都知道如何处理 PDF 文档,而不是他们对 PostScript 文档的了解。

HTMLDOC 还可以生成 PDF 输出。你知道吗?

所以,我会为你提出一个不同的工作流程:

  1. 让 HTMLDOC 生成 PDF 输出。但是不要在页面上放置地址、页脚和其他东西(还)。
  2. 将您的地址和页脚以及其他动态内容分别生成为 PDF(您也可以为此使用 HTMLDOC)。这将使您能够更好地控制文本的确切位置,不受动态文档内容的干扰。
  3. 合并文档和地址/页脚/等。pdftk使用' 的命令行功能(stampbackgroundmultistamp/multibackground将是可行的子命令进行查看)将页面转换为一个 PDF 页面。

我很确定这个设置会让你比现在的设置少得多——即使乍一看它看起来更复杂。

如果您坚持 PostScript 输出,您仍然可以将 PDF 转换为 PostScript(为此推荐的工具:pdftops来自 Poppler 或来自 XPDF;可能还有 Ghostscript,但请确保拥有最新版本并使用-sDEVICE=ps2write,而不是 ...=pswrite!)。

于 2015-04-20T18:39:41.823 回答