使用PHP从doc、xls文件中读取数据

3

我想知道是否可以从doc和xls文件中读取数据,并将读取的内容放入图像文件中(创建文档页面样本)。例如,我有一些我希望我的客户购买的文档。因此,我需要自动创建类似于我的文档样本的小图片。

感谢您的帮助。

3个回答

4

如果您需要读取xls文件,我非常推荐PHPExcel,这是一个非常简单但功能强大的工具 :) 至于doc文件,很遗憾我没有好的推荐。但我相信一定有好的解决方案。

编辑:我找到了一个快速的小解决方案,只需使用终端命令中的一行代码即可读取doc文件,虽然可能不能满足您的所有需求,但我认为值得一提。请注意,此方法仅适用于doc文件,不适用于docx。从PHP读取doc文件


虽然PHPExcel可以读取xls文件,但它不能直接生成该文件的图像。但是,它可以从加载的文件生成HTML输出,然后可以通过屏幕截图工具将其“抓取”为图像文件。 - Mark Baker
可能是我误解了问题,如果只是文档的缩略图,那么根本没有必要读取数据。只需找到一些可以打开文件并创建截图的软件即可。我以为他需要从这些文件中读取数据,因为帖子中是这样说的,这种情况下,PHPExcel非常出色。您还可以使用ImageMagick等软件,这可能会有所帮助,至少它非常适合使用命令行从PDF文档生成图像,但这很可能不适用于doc和xls。 - Sondre
实际上,我需要对文件进行截屏。我想我在想得太复杂了... ImageMagic能否从Word或Excel文件中截取屏幕截图? - Bounce
我没有尝试过,但我认为ImageMagick不支持这些格式。你可能需要一些可以使用GUI打开文件并进行截屏的软件。像这样的软件是存在的,我的一位前同事曾为一个项目做过类似的事情。但我不知道具体是如何完成的,所以无法推荐任何具体的东西。 - Sondre
也许可以尝试以下两个步骤:
  1. 使用http://www.phplivedocx.org/2009/02/06/convert-doc-to-pdf-in-php/将doc转换为pdf。
  2. 然后使用ImageMagick将pdf转换(截图)为图像。
- Bounce

0

尽管这看起来非常酷也非常方便,但不幸的是并不行。可能有一种方法可以使用Google Docs API实现,但我表示怀疑 :-(

詹姆斯


但 Gmail 很好地打开了文档文件。可能还有机会。 - Bounce
有没有人知道 API 中是否有 .doc 处理函数? - Bojangles

0

如果您使用的是Linux,可以使用Antiword获取Word 2000文档的纯文本。要获取Word 2007文档的文本内容,需要解压缩并读取其中包含的XML。像这样http://www.webcheatsheet.com/PHP/reading_the_clean_text_from_docx_odt.php

然而,要获取带有所有格式的实际Word文档的屏幕截图可能需要在服务器上运行Word版本,并像Litmus与浏览器一样进行屏幕截图。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接