如何在PHP中将html转换为doc

Moh*_*ain 6 html php doc

我需要将html文件转换为doc.我正在使用html2pdf进行pdf转换.

是否有任何类型的html2doc库?

(PS必须是免费/开源的)

编辑

在Mark Eirich评论之后

这是两个截图.Word文档没有正确对齐.检查word文档中的y滚动. WORD文档,检查y滚动..

html文件,在浏览器上..

身体标签是: -

<body style="margin-left:350px; margin-right:350px;">
Run Code Online (Sandbox Code Playgroud)

我试着调整但没有效果..

编辑2

在Mark Eirich第二次发表评论之后,我开始知道单词是在像素中处理事物而不是在%年龄.我有最后一期背景..任何帮助..请检查两个屏幕截图.不同的是外盒.那就是html生成的doc看起来很奇怪.

原始的word文件

html生成的doc文件

Rob*_*itt 5

答案IMO不会,原因如下:

Microsoft Office Documents的设计方式非常复杂,不仅有一个带有对象(如图像)引用的格式化文件,还有一个类型od文件系统可以管理这些对象的二进制数据.

让我从我们自己的乔尔那里引用一句话:

如果您开始阅读这些文档,希望花一个周末编写一些可以将Word文档导入您的博客系统的漂亮代码,或者使用您的个人财务数据创建Excel格式的电子表格,那么规范的复杂性和长度可能会让您感到沮丧.欲望相当快.一个普通的程序员会得出Office的二进制文件格式:

  • 故意混淆
  • 是痴呆的博格心灵的产物
  • 是由疯狂的程序员创造的
  • 并且无法正确阅读或创建.

所有四项都是错的......

进一步了解可能的解决方案:

如果你真的想要生成花哨的格式化Word文档,最好的办法是创建一个RTF文档.Word可以做的所有事情都可以用RTF表达,但它是一种文本格式,而不是二进制格式,因此您可以更改RTF文档中的内容并且它仍然有效.您可以使用Word中的占位符创建格式良好的文档,另存为RTF,然后使用简单的文本替换,即时替换占位符.现在您有一个RTF文档,每个版本的Word都会愉快地打开.

@source:http://www.joelonsoftware.com/items/2008/02/19.html

您旅途中可能感兴趣的一些链接:

虽然,尝试使用winrar打开一个word文件;),也许创建一个包含某些标题的存档然后更改扩展就足够了,从未尝试过

  • 我的想法是因为有人提供了一个工作解决方案的链接,你说这是不可能的.不值得一个downvote,因为你做了一个非常好的讨论,我喜欢阅读Joel关于此事的意见. (2认同)

And*_*scu 2

为了转换为 Microsoft Word,您需要一个支持 COM 的服务器(在其上运行 Windows 和 Office)。如果你有这样的服务器

$word = new COM("word.application") or die ("couldnt create an instance of word"); 
Run Code Online (Sandbox Code Playgroud)

应该管用!。阅读http://php.net/manual/en/book.com.php了解详细信息。

否则,您最好的 html2doc 是 html2rtf,它是通过http://paggard.com/projects/rtf.generator/http://sourceforge.net/projects/phprtf/等库实现的。

创建 RTF 后,您可以使用文档标头将其提供给浏览器

header("Content-type: application/vnd.ms-word");
header("Content-Disposition: attachment;Filename=document_name.doc");
Run Code Online (Sandbox Code Playgroud)

如果用户有单词,那么它将打开来处理该文件。

另外,将 rtf 保存为 doc 是可以的,并且 word 将在布局视图中打开,没有任何抱怨。您还可以使用上述标头提供 HTML,但问题是 Word 将在 Web 视图中打开,这很糟糕:)

  • 他要求一个免费/开源的解决方案! (4认同)