【发布时间】:2013-11-03 06:55:15
【问题描述】:
我正在编写一些逻辑来构建一个大型的单个 PDF 文件,我们的用户可以在方便时打印该文件。我正在使用 Java 的 iText 库(通过 Clojure 的 clj-pdf)。
我试图让 PDF 在每一页上显示完全相同的模板表单,但是我似乎找不到任何文档或指示可以让 PDF 内容“适合页面”。
这些形式的文本略有不同,因此每页可能需要更多更少的文本行。这意味着内容有可能溢出到下一页,或者太短,使下一页爬到上一页,打破了文档其余部分“每页一个表单”的要求。
我试图弄清楚我的选择是否仅仅是手动检查每页上文本的长度,如果我超过 n 行,可能会手动裁剪它,或者 PDF 格式是否以某种方式支持智能将段落+表格+标题全部放在一页中的方式。一些 UI 系统允许你控制溢出的处理方式,从裁剪到调整字体大小,所以我很好奇 PDF 是否支持这种类型的任何东西。
编辑:为简单起见,最终使用分页符,当我写这个问题时不知道这个选项。
【问题讨论】:
-
你说 pdf 支持它......我认为你的意思是我选择创建 pdf 的应用程序支持它。并且正如您还指出的那样,有很多方法可以控制从裁剪到字体大小到行距到段落间距的溢出...如果您将 iText 指定为解决方案,那么您可以对所有这些进行编程。如果您使用的是替代方案像 xsl fo 这样的解决方案,那么它们可能在您选择的产品中。根据您的要求,您需要自己编程。
标签: pdf pdf-generation itext