【问题标题】:What is a good PDF to HTML converter for Ruby on Rails? [closed]什么是用于 Ruby on Rails 的好的 PDF 到 HTML 转换器? [关闭]
【发布时间】:2010-12-26 09:42:45
【问题描述】:

我正在尝试以编程方式将 PDF 转换为 HTML。到目前为止,我一直在使用pdftohtml,但我们的用户对结果并不满意。

这是我需要的:

  • 我正在使用 Ruby on Rails,但是任何在 Unix 上工作的工具都可以工作,因为我可以从命令行调用它。当然,一个不错的 gem 或插件会是完美的。

  • 我希望它是开源的

  • 它需要能够处理图像

  • 如果需要时可以选择丢弃图像,那就太好了

  • 需要稳定

  • 它需要返回布局接近原始pdf的html(我试过pdftohtml,结果在很多情况下都不是那么好)

【问题讨论】:

  • 是否有特定原因需要 html 输出,而不是其他原因?正如其中一个答案所说,pdf和html是截然不同的文档模型。如果我们知道基本要求,我们也许可以提出更好的替代方案......
  • 目前的逻辑是获取pdf并显示为HTML。我公司已经开发了一些解决方案,但是最终的渲染效果不是很好,所以他们想改进它

标签: html ruby-on-rails ruby pdf pdf-to-html


【解决方案1】:

对于 PDF 到 HTML 的转换,pdf2htmlEX 似乎是一个不错的工具(查看所有示例/示例):

https://github.com/coolwanglu/pdf2htmlEX

【讨论】:

  • 在我有限的测试中,它产生了令人震惊的好结果。
  • 这是gr8工具,但是如何与rails合并?
  • @BMW 项目 wiki 是一个很好的起点:github.com/coolwanglu/pdf2htmlEX/wiki/Quick-Start。我认为您可以使用 system 调用轻松地将其插入到 Rails 应用程序中。
【解决方案2】:

我刚刚发布了一个 ruby​​ gem 来转换带有开放式无头办公室的文档(通过 poyconverter 或 jodconverter)。它还集成了其他几个库(pdftools 和 netpbm)来从 pdf 文件中提取文本 dans 图像。

你可以在这里找到它https://github.com/itkin/proselytism.git

随意添加您自己的转换器并向我报告一些问题

【讨论】:

    【解决方案3】:

    在使用pdftohtml一段时间后,对html版本的显示结果不满意,我正在考虑使用google apps document API或scribd API(我现在最喜欢的)

    http://www.scribd.com/developers/api

    最后我大概会用pdftohtml来简单的提取pdf文件的文本内容 以及用于在用户页面上显示原始文件的 scribd api

    【讨论】:

      【解决方案4】:

      可以试试这个。我在 pdftohtml 实用程序周围包装 Ruby 方面做了第一次尝试。宝石可在此处获得:http://gemcutter.org/gems/pdftohtmlr

      【讨论】:

        【解决方案5】:

        你可以试试http://www.pdf-to-html-word.com/pdf-to-html 这真的很好。我在检查了它的功能后付了钱。您可以免费乘车进行测试。 或者使用 Acrobat Pro 并使用 CSS 另存为 HTML。这也有效。但是处理一堆文件是一件很痛苦的事情。

        【讨论】:

          【解决方案6】:

          我花了一段时间从事一个涉及将 PDF 作为输入的研究项目。您所要求的只是一项非常艰巨的任务,没有软件可以完美地完成它。尽管 HTML 有一些结构,例如 <p>,但 PDF 是纯粹的表现形式。 HTML 文档会说,“这是一个段落。这是一个图像。”并且演示文稿是从那里解释的。 PDF 文档基本上会说:“这个字符应该在 X,Y 位置呈现。下一个字符将在位置......

          我在 Java 中工作,所以我认为我使用的特定程序对你没有多大用处。另外,我记得一些 PDF 生成器将图像拼接成更小的图像并将它们彼此相邻显示——这是一个巨大的痛苦。

          有什么方法可以让您使用不同的格式,或者降低您的期望值?您可以执行 Wayne 建议的图像操作,但它不是真正 HTML(而且它不可访问——这对您来说是个问题吗?)。这可能只是你生活的一部分。

          【讨论】:

            【解决方案7】:

            这里有几个 pdftohtml/xpdf 的替代方案:

            • Adobe 提供免费的在线 PDF 到 HTML 或文本 conversion service。取回文档可能需要一两分钟,但我怀疑此选项会给您带来最佳效果。
            • 有一个pdf-reader ruby​​ gem 可以让您访问PDF 文件的内部。这将涉及您的一些开发/扩展,但您可以使用它来解析 PDF 文件并生成漂亮的 HTML。如果您提前知道用户正在转换什么类型的文件(例如,如果他们使用标准化表单),这可能比听起来容易。
            • 如果您先使用ghostscript(gem 可在此处找到)将 PDF 转换为另一种格式,您可能会有更多选择。 gem 可以从 PDF 文件生成图像(png、jpg 等),但您最好将其转换为 PostScript 文件,因为似乎有无数“PostScript-to-[在此处插入格式]”转换器。

            【讨论】:

            • 对于没有很好地转换为 HTML 的 PDF 文档,我建议使用 Adob​​e 的在线转换服务进行测试。如果它们仍然低于标准,我不会花太多时间研究替代品,因为我认为 Adob​​e 自己的转换器将是最好的。
            【解决方案8】:

            尝试使用 poppler 或 xpdf。但它需要一些魔法和约束力。

            【讨论】:

            • poppler 可以将 pdf 渲染为其他内容。您可以接受其中一个目标。
            【解决方案9】:

            如果一切都失败了,您可以将每个页面转换为图像(使用图像魔法或类似方法)并显示图像,例如 http://books.google.com 或 http://safari.oreilly.com。这会占用大量带宽,但您会忠实于原版。

            【讨论】:

            • 这是一个有趣的解决方案,我会研究一下
            • 当我需要将 PDF 很好地转换为其他格式时,我就是这样做的。
            • 如果您需要实际解析 PDF 文件中的文本,此解决方案不是很好。
            猜你喜欢
            • 1970-01-01
            • 2010-10-30
            • 2011-08-01
            • 2016-10-02
            • 2014-03-03
            • 2011-02-24
            • 1970-01-01
            • 2010-09-10
            • 2011-07-27
            相关资源
            最近更新 更多