14

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

这是我需要的:

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

  • 我希望它是开源的

  • 它需要能够处理图像

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

  • 它需要稳定

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

4

9 回答 9

12

以下是 pdftohtml/xpdf 的更多替代方案:

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

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

https://github.com/coolwanglu/pdf2htmlEX

于 2013-10-02T20:57:40.787 回答
3

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

于 2010-01-06T17:27:24.717 回答
2

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

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

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

于 2010-01-10T17:48:01.273 回答
0

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

于 2010-01-06T17:48:42.857 回答
0

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

于 2010-01-11T20:31:03.807 回答
0

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

于 2010-02-11T18:49:49.057 回答
0

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

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

最后,我可能会使用pdftohtml来简单地提取pdf文件的文本内容和scribd api在用户页面上显示原始文件

于 2010-02-12T05:53:18.920 回答
0

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

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

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

于 2013-03-06T08:12:11.837 回答