0

我有一个 PHP 应用程序,它接受来自用户的 .doc、.docx、.pdf 和 .rtf 文件。然后应用程序计算上传文档中的字数以计算价格。

我一直在寻找这个问题。我所知道的是,这可以很容易地用 COM 类完成,但这只适用于 Windows 服务器而不是 Linux。我的应用程序在 Linux 服务器上运行。

谁能告诉我如何实现这一目标?

4

1 回答 1

1

阿帕奇 POI

Apache POI 可以从 Microsoft 格式中提取。文本提取相当简单,所以应该没问题,尽管据我所知 docx 被认为是实验性的

创建一个简单的命令行程序,直接返回字数或返回文件的文本内容应该相当简单。我以前使用过 POI 来索引 Microsoft 文档,并且效果很好。

LibreOffice / OpenOffice

  • soffice --headless --convert-to txt:text <file>
  • 也可以处理.odt,.rtf等...(虽然不是 PDF)
  • 虽然可能不是最快的解决方案

还有一些库做的基本相同,同时提供了一个通用的接口,比如

负面的

正如评论中提到的那样,那里有“很多”这样的图书馆,我做了一些研究,但不是很成功;我找到了以下库,但似乎没有一个真正具有所需的功能

  • PHPWord:只能docx
  • PHPDocX:也仅用于生成,但可以从现有 docx 中提取,但不能从二进制 doc 格式中提取。Pro 版本有一个转换器,但它需要 Java,所以我敢打赌它在后台使用 Apache POI。

但是,对于 PDF,您必须获得另一种解决方案。但是那里确实有大量的 PHP PDF 库,其中大多数至少是不错的,因为 PDF 是一种定义明确的格式,如果没有其他的话。

于 2013-06-06T12:05:03.757 回答