首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从两个格式化源创建页面的适当报告合并技术

从两个格式化源创建页面的适当报告合并技术
EN

Stack Overflow用户
提问于 2012-11-02 02:23:44
回答 2查看 105关注 0票数 0

考虑由页眉、细节顶部、细节底部和页脚组成的报表页。我有一个服务,将运行一个“应用程序”。这个应用程序将产生最终将出现在报告的细节-底部部分。它将将其输出存储在文件系统中。在App生成输出(和关机)之后,单独的“服务”将生成最终报告“合并”应用程序生成的内容(该服务提供页眉、页脚和细节顶部区域的内容)。如果我是用文字手工生成的话,我就必须将Word文档作为一个对象插入到最终报告文档中。

我试图找出一种合适的技术来完成这一任务。

所需经费包括:

  1. 生成最终报告的服务将是Linux机器上的Java服务运行。我将开发这个代码。
  2. 生成细节底部内容的应用程序可以是Windows (例如,C#)或Linux (例如,Java)应用程序。任何其他开发人员都将开发此代码,并通过我将提供的SDK与我的服务进行接口。他们被认为是熟练的开发人员,但我不知道他们对任何报告生成技术有什么经验。
  3. 服务使用的模板将给完成的报告提供相同的外观和感觉,而不考虑运行的应用程序,而应用程序将完全控制完成报告的细节底部部分的内容。换句话说,如果模板在完成的报告中为细节-底部部分分配了一个7Wx5H的“框架”,则应用程序本质上将有一个7x5W的空白页面来处理。
  4. 完成的报告可以是多个页,第一页可能与其余的页不同。如果应用程序生成多个页面(例如,7Hx5W页),服务将将每个App页面合并到完成报告的每个页面的细节-底部部分,从而让App处理分页问题,就像它自己生成整个报表一样。
  5. 在某种程度上,我希望为最终用户提供一个UI,用于管理已完成的报告(模板)的布局。
  6. 我并不关心App是如何生成要插入到细节底部框架中的内容的,而且当他为我提供一个完成的可执行文件供我运行时,我不会为他提供任何UI来管理他的报表布局/内容。
  7. 交付给最终用户的已完成的报告将是PDF格式。
  8. 由于我不确定accepted的技能集,并且可能有很多应用程序和开发人员,我希望他们能够产生我可以接受的输出,以便合并到dertail底部框架中,这是被接受的,支持的,而且使用起来也不会太麻烦。

到目前为止,向我提出的各种技术包括:

  1. Apache (XML)
  2. DOCX
  3. 图文
EN

回答 2

Stack Overflow用户

发布于 2012-12-09 08:49:18

这里有一个使用FOP的解决方案:

  • 让应用程序将各自的数据保存到两个具有固定名称的XML-文件中。因此,您的API将是数据生产者必须坚持的XML文档模式。
  • 提供一个XSL文件,该文件包含完整PDF的布局,并使用document() xsl函数读取这两个文件。
  • 为了同时处理多个报表,请为每个报表使用一个目录。
  • FOP负责分页。

如果希望最终用户可以配置布局,可以让他们以应用程序定义的方式更改xsl。您还可以将XSL分成几个部分(对于第一个报告、第二个报告、整个布局),并将它们全部导入到一个主模板中。

票数 1
EN

Stack Overflow用户

发布于 2015-08-01 14:26:47

如果最后的输出是PDF,它能精确控制外观,为什么不允许生成底层框架的应用程序也生成PDF,从而对外观进行精确控制?

PDF支持的一个特性是"Form XObject“,它允许将一个PDF中的内容包含到另一个PDF中。您甚至可以从页面上取下特定的矩形,这样应用程序就可以创建它想要的任意大小的PDF,并指定包含内容的矩形。

必须有支持XObjects格式的Java库,因为这并不难。我已经编写了一个Python名称帕德夫,它允许您以这种方式合并页面。我还没有很好地记录这一切,但是在这个站点上有几个例子,还有一个非常相关的这里

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13188421

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档