【问题标题】:Generate HTML reports containing info stored in pdf files生成包含存储在 pdf 文件中的信息的 HTML 报告
【发布时间】:2012-04-02 11:48:19
【问题描述】:

我想生成一个包含一些输出(图表、来自 R 的统计数据)的 html 报告。图表保存在 pdf 文件中。

我的选择:将生成 html 报告的 perl 脚本(通过将 pdf 转换为 jpeg)

在这种情况下还有哪些理想的选择?

我在 UNIX 环境中工作。

【问题讨论】:

  • 如果您想要一个简单的输出,您可以让 C、Ruby、R 输出 PDF,然后运行一个工具将所有文件按顺序连接到一个新的 PDF 文件中。
  • @EmmadKareem-我正在从 R 脚本调用所有程序并且还有其他文件。我还需要在我的最终报告中添加他们的内容..所以 pdf 文件不是我需要的好选择。我没有添加足够的细节。很抱歉。

标签: html perl r pdf


【解决方案1】:

如果您可以控制如何在 R 中创建图形和统计信息,那么您最简单的方法可能是使用 R2HTML 包直接生成 HTML。这将包括一种类似 sweave 的方法,该方法将在 HTML 模板中的适当位置替换 R 输出。

此外,R 可以像创建 PDF 一样轻松地为图形创建 jpeg 文件(或 gif),因此可以完全避免转换步骤。

【讨论】:

  • 我有混合输出 (R, Ruby,C) ,都以 pdf 格式显示图形。我可以调整我的 R 脚本中的那些,但不能调整其他程序返回的那些。这就是为什么我一直在寻找可以按原样使用输出的东西。但是,您建议的软件包可能对某一部分有用。
【解决方案2】:

如果你熟悉 R,你可能可以看看knitr package。 R2HTML基于Sweave,扩展性不强,knitr完全可扩展,自然支持HTML;查看minimal examplesource

对于如何保存 R 图形(pdf、png、jpeg...),您有多种选择;请参阅dev option(图形设备)。所以R端不需要从PDF转换为其他位图格式。

你说你也有 Ruby 和 C 输出;我不确定您将如何处理它们:您是要动态生成输出(文学编程)还是手动插入它们?对于前者,您可能可以使用 R 函数system() 来运行外部程序(例如调用 C 生成 PDF 并调用 perl 进行转换)。您也可以定义knitr hooks 来完成这些工作,但您可能需要更多了解钩子在knitr 中的工作原理。

另一种方法是使用批处理作业转换您的 PDF 输出,并修改 HTML 代码,例如将所有 PDF 文件转换为 JPEG 后,将 HTML 中的 <img src='foobar.pdf' /> 替换为 <img src='foobar.jpeg' />。这应该更容易。

【讨论】:

  • @Yihui- 感谢您的建议。我正在逃避系统命令或任何与“手动”相关的东西。我想我将不得不以某种方式读取并格式化文件(C 和 Ruby 输出)并使用后一个建议将其更改为 jpeg。我需要它尽可能动态和通用。
猜你喜欢
  • 2013-11-30
  • 1970-01-01
  • 2020-11-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-02-17
  • 2012-12-29
  • 1970-01-01
相关资源
最近更新 更多