【问题标题】:Convert HTML & CSS to DOC(X)?将 HTML 和 CSS 转换为 DOC(X)?
【发布时间】:2012-02-02 05:41:46
【问题描述】:

是否有一些实用程序可以通过命令行调用来生成 doc(x) 文件?源文件可以是 HTML 和 CSS。

我正在尝试使用 PHP 即时生成 Word 文档。我只知道 phpdocx 库,它非常低级,对我来说用处不大(我已经有一个糟糕的 Word 文档生成实现)。

我需要的文档:

  • 目录
  • 图片
  • 页脚/页眉(可以在每个 HTML 页面上手动制作)
  • 列表
  • 分页符(能够决定哪些内容进入哪个页面,例如每页一个 HTML 文件,连接多个 HTML 文件以生成整个文档。)
  • 段落
  • 基本粗体/等样式

【问题讨论】:

  • 由于 HTML/CSS 和 Word 文档是两种完全不同的文档模型,您会认为这样的实用程序会使创建 Word 文档变得更加困难。初学者如何在 HTML 页面中表达页眉和页脚?但谁知道呢,也许有人会想出点什么来……:)
  • @deceze 我认为很明显它们是不同的。您不能在 Word 文档中放置 HTML5 视频,现在可以吗?关键是能够将

    转换为 Word 段落,对于在 Word 中有对应的

  • 也是如此。不同的页面将使用连接到一个文档中的不同 HTML 文件来完成。页脚和页眉可以单独放置在每个页面上。
  • @rFactor 我认为你最好的选择是 DOMPHPWord 的组合。
  • 他(正确地)指的是一个是分页媒体,另一个不是。无论如何,docx 格式本质上是由 zip 存档中的 XML 文件组成的,因此您可以使用 XSLT 实现从 HTML 到 XML 的基本转换。然而,这对 CSS 没有帮助,而且要体面地实现会困难。 PHPDOCX 到底有什么不满足你的?
  • @rFactor 我只是在浏览 PHPWord 主页(有一段时间没在那里了),我遇到了this...

标签: php html ms-word docx doc


【解决方案1】:

我也没有发现 PHPDOCX 很有用。替代方案可能是 PHPWord,我认为它涵盖了您需要的内容。根据网站,它可以做这些事情:

  • 插入和格式化文档部分
  • 插入和格式化文本元素
  • 插入文本中断
  • 插入分页符
  • 插入和格式化图像和二进制 OLE 对象
  • 插入和格式化水印(新)
  • 插入页眉/页脚
  • 插入和格式化表格
  • 插入原生标题和目录
  • 插入和格式化列表元素
  • 插入和格式化超链接
  • 非常简单的模板系统(新)

在您的情况下,这还不够,但有一个插件可用于将(基本)HTML 转换为 Docx,我认为它非常有效。 http://htmltodocx.codeplex.com/

我已经使用了一两年了,对此我很满意。尽管我必须补充一点,HTML 不能太复杂。

【讨论】:

    【解决方案2】:

    我通常这样做的方式是创建一个 word 文档模板文件,其中包含我想要使用关键字替换的部分(通常类似于“{FIRSTNAME}”)。 这允许您通过 PHP 读取文件,然后只需对要替换的所有部分执行 str_replace,然后将其写入另一个文件。

    使用这种方法的动态表有点棘手,因为您需要一个用于一行的子模板,然后您可以根据需要多次将其包含在主模板中。

    我不确定这是否是最好的解决方案,它对我来说似乎总是很繁琐,每次我被要求这样做时,我都会对此感到沮丧,但我想它确实有效。因此,如果有人知道更好的解决方案,我也很想听听!

    【讨论】:

    • 我在这些模板中需要大量的 IF 和 LOOP,所以我不能简单地替换。
    猜你喜欢
    • 2012-01-14
    • 1970-01-01
    • 2018-12-07
    • 1970-01-01
    • 1970-01-01
    • 2023-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多