我希望能够从数据库或xml或任何其他结构化表单中的数据生成高度图形化(包含大量文本内容)PDF文件。

目前,我们的平面设计师在将内容作为MS Word文档获取后,手动在Photoshop中创建这些PDF文件。但通常,内容有20多个修订版;这里和那里的小变化,拼写更正等。

这两个缺点是: 1)图形设计师的时间被不必要地占用。第一个版本是他/她应该工作的唯一版本。 2)PDF文件成为现在具有最终修订内容的文档,并且初始内容与其不同步。因此,如果初始内容需要在其他地方(例如在网站上),我们需要从PDF文件中重新创建它。

生成PDF文件将帮助我解决这两个问题。可能是图形设计者创建“模板”的某种方式。然后放入标签/持有人并将这些标签/持有人映射到相关数据。

谢谢: - )

有帮助吗?

解决方案

有一些工具可以做到这一点。 XSL-FO非常有用。 此处是从xml创建pdf的教程(或xhtml)与茧。另请参阅 Apache FOP

您可以将SQL数据格式化为XML,并且仍然以这种方式使用相同的模板。

其他提示

我使用ReportLab python库。它也许可以解决你的问题,但你需要做一些工作......

过去我编写的脚本吐出LaTeX然后使用 texi2pdf 来解决这类问题。

http://jasperforge.org 上查看iReport和JasperReports。 iReport允许您设计报表,然后您可以使用JasperReports库(Java)以编程方式填充报表,或者只使用iReport手动创建报表。

我只将它用于表格数据,但我不认为其他类型的文档会有任何问题。

您可以使用像iText(Java)这样的pdf库以编程方式创建表单并填充条目。

你可以看一下在PostScript中做的工作流程,这是一个纯文本,你可以很容易地从片段组成。然后,您可以使用任何免费工具转换为PDF。

查看 Prince XML 。该工具允许基于XML或HTML和CSS生成PDF。

一种可能的方法是使用模板引擎,如FreeMarker或StringTemplate:这些通常用于生成HTML,但它们足够灵活,可以实际输出任何格式。
问题是制作PDF模板,我想。也许您可以采用示例输出并对其进行编辑,以使用由模板引擎填充的占位符替换数据。可能不是微不足道的!

听起来像SQL Server Reporting Services可以轻松处理的工作。
Reporting Services允许您查询数据,定义布局并导出到PDF而无需任何干预。 PDF输出可以通过电子邮件分发,存储在文件共享中,也可以通过报表服务器上的页面进行访问 它也可以处理XML数据源。

从数据生成PDF文件的另一种方法是使用 prawn ,它基于红宝石。对虾中包含了多少功能,我感到非常惊喜。可能需要一些投资,但这种方法会给你很大的灵活性。

您可以将CSStoXSLFO与RenderX中的XEP结合使用,以获得高质量的输出。使用此解决方案,您可以将XML数据合并到XHTML模板中,该模板使用CSS进行修饰。它还可以使用梦幻般的JFreeChart库生成图表。支持CSS3页面媒体功能。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top