【发布时间】:2010-12-02 20:44:45
【问题描述】:
我想在我们的 CMS 中添加一个单词导入功能,唯一的问题似乎是找不到一个好的库来读取 docx 文件(Word 2007)。
有没有人有一些建议,该库应该能够提取文档的内容和基本样式,如斜体、粗体、上标?
感谢您的帮助
【问题讨论】:
标签: php import ms-word office-2007
我想在我们的 CMS 中添加一个单词导入功能,唯一的问题似乎是找不到一个好的库来读取 docx 文件(Word 2007)。
有没有人有一些建议,该库应该能够提取文档的内容和基本样式,如斜体、粗体、上标?
感谢您的帮助
【问题讨论】:
标签: php import ms-word office-2007
有一个库可以做到这一点,但它适用于 Zend 框架 可能会对您有所帮助 它被称为 phpLiveDocx :http://www.phplivedocx.org/downloads/ 该库在 New Bcd 下获得许可
【讨论】:
这是我找到的一个简单可行的解决方案
http://webcheatsheet.com/php/reading_the_clean_text_from_docx_odt.php
【讨论】:
PHPDocX PRO 包含一个 TransformDoc 类,可以读取 .docx (zip) 文件并从中生成 XHTML(或 PDF):
...
require_once 'phpdocx_pro/classes/TransformDoc.inc';
$doc = new TransformDoc();
$doc->setStrFile($file->filepath);
$doc->generateXHTML();
$html = $doc->getStrXHTML();
【讨论】:
使用OpenOffice 将 docx 文档转换为 odt。然后使用eZ Components 进行解析和导入。他们实际上在他们的 CMZ eZ Publish 中使用了导入。
【讨论】:
我刚刚在 codeplex forge http://openxmlapi.codeplex.com 上找到了一个同时支持读写的库,它是在 GPLv2 下获得许可的。
【讨论】:
或者,由于您请求了一个库,您可能想要查看Docvert 之类的内容。我只是根据您的问题环顾四周,到目前为止,它是我最喜欢的 PHP。您输入单词文件位置,它会将其转换为带有属性和所有好东西的简单内容。
【讨论】:
docx 文件实际上只是文档 XML 的容器。您应该能够解压缩 docx 文件,然后转到里面的 word 文件夹,然后转到 document.xml。这有实际的文字。但是诸如字体和样式之类的东西在 docx 容器中的其他 xml 文件中,所以你可能想弄乱一点,弄清楚什么是什么以及如何匹配它(从使用命名空间开始,我敢打赌)。
但是,是的,解压缩文件,然后使用 simplexml 将其转换为您可以实际使用的东西。
【讨论】: