【发布时间】:2014-07-12 03:07:54
【问题描述】:
我有以下 HTML:
<html><body><p>n<sup>th</sup></p></body></html>
我正在使用命令:
$ libreoffice --convert-to docx:"MS Word 2007 XML" test.html
将该 HTML 转换为 DOCX 文件。但是我注意到生成的 DOCX 文件实际上并不包含 <sup> 标记。看起来它正在使用位置和大小来复制<w:vertAlign> 标签:
<w:position w:val="8"/><w:sz w:val="19"/>
我需要知道的是如何让 libreoffice 放入 <w:vertAlign> 标签而不是使用位置和大小。
附加信息:
我在粗体和斜体 (<strong><em>) 方面遇到了类似的问题,但如果我将 strong 和 em 标记分别转换为 b 和 i 标记,则能够使转换正常工作。
【问题讨论】:
-
我在使用 libreoffice 转换为 docx 时遇到了类似的问题,并且花了太多时间试图找出哪些标签转换正确而没有正确转换。我使用以下方法取得了更一致的成功:cloudconvert.org/html-to-docx 如果您时间紧迫,我建议您尝试这种替代方法。具体来说,我知道它可以正确处理 标记。
-
@BrianGilreath 我用我的问题发布的确切 HTML 尝试了你提到的工具。
sup仍然转换为位置和大小,而不是vertAlign -
这可能是文档类型问题吗?如果你在开始的 html 元素之前声明 html5 doctype,你会得到不同的结果吗?
-
是否需要通过 libreoffice 进行转换?
-
@albert 我尝试了不同的文档类型,但它们似乎都没有帮助。 @ user3241019 我不需要使用 libreoffice 进行转换,但这是我在一般情况下找到的最佳工具。
标签: html converter docx libreoffice