【问题标题】:How to fix the space issue when pasting the MATHML code in word document?在word文档中粘贴MATHML代码时如何解决空格问题?
【发布时间】:2019-07-20 13:40:09
【问题描述】:

我已经从 Latex 文本转换了 MathML 代码,当我将代码粘贴到 word 文档中时,不会保留必要的空格。有什么办法可以解决空间问题。 (你可以直接复制MathML代码粘贴到Ms Word中)

标记“<mspace/> 在 Word Equation 中完全被忽略。

例如:<mspace width="2.3in" />

微软办公版:2010

我尝试了一些手动空间,但输出很糟糕。

<?xml version="1.0"?>
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
  <mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true">
    <mtr>
      <mtd>
        <mspace width="2.4in" />
        <mfrac>
          <mrow>
            <msup>
              <mi>d</mi>
              <mrow class="MJX-TeXAtom-ORD">
                <mn>2</mn>
              </mrow>
            </msup>
            <mi>y</mi>
          </mrow>
          <mrow>
            <mi>d</mi>
            <msup>
              <mi>x</mi>
              <mrow class="MJX-TeXAtom-ORD">
                <mn>2</mn>
              </mrow>
            </msup>
          </mrow>
        </mfrac>
        <mo>+</mo>
        <mi>y</mi>
        <mo>=</mo>
        <mn>0</mn>
        <mspace width="2.3in" />
        <mo stretchy="false">(</mo>
        <mn>1.2.1</mn>
        <mo stretchy="false">)</mo>
      </mtd>
    </mtr>
  </mtable>
</math>

实际输出: █((d^2 y)/(dx^2 ) + y=0(1.2.1))

所需的输出: █((d^2 y)/(dx^2 ) + y=0&lt;some space here&gt;(1.2.1))

【问题讨论】:

    标签: ms-word mathml


    【解决方案1】:

    我尝试将 Mathml 代码转换为 MML2OMML.XSL,它是使用“XslCompiledTransform”的 Open-Xml 样式表,但不保留 &lt;mspace&gt; 间距。

    所以我使用实体 (&amp;#160;) 在 &lt;mspace&gt; 标记的下一个兄弟中添加空格,将 mspace 宽度乘以值 '25' 我可以得到空间计数。

    输出很好。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-09-21
      • 1970-01-01
      • 1970-01-01
      • 2021-08-12
      • 1970-01-01
      • 2021-06-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多