来自 HTML 源的 Microsoft Office 截断行

Microsoft Office truncating line from HTML source

在一个应用程序中,我提供了一个复制到剪贴板的功能,可以导出 HTML 彩色格式化文本代码,以便在办公程序中导入。这是一个最小的例子:

<html><body><pre style="font-family:monospace;">
  A  B  C
1 <span style="background-color:blue">#      </span>
</pre></body></html>

此代码可以很好地导入 LibreOffice 4.3,从 A 列到 C 列显示蓝色背景,但 Microsoft Office(测试的不同版本)通过尾随空格截断 span 标记的内容。

我尝试用不可分割的空格替换所有空格,但 LibreOffice 无法解释这些空格。

是否有另一种更兼容的导出方法?

如果您将使用“ ”而不是“ ”,它应该可以在 LibreOffice 中使用(在您自己使用此应用程序验证之后)并且它确实可以与 Microsoft Office 一起使用(我自己验证过)。

Is there another way to export this in a way that's more compatible?

实现相同视图的可靠且最简单的方法是使用常规 <table> 标记。例如:

<table>
  <tr>
    <td></td>
    <td>A</td>
    <td>B</td>
    <td>C</td>
  </tr>
  <tr>
    <td>1</td>
    <td colspan='3' style='background-color:blue;'>#</td>
  </tr>
</table>