将 xparse 命令转换为 html

将 xparse 命令转换为 html

我在将 LaTeX 文档转换为 HTML 时取得了不同程度的成功,但我遇到的主要问题之一是转换包含通过 xparse 包定义的命令的表达式。例如,

\DeclareDocumentCommand\derivative{ s o m g d() }
{ % Total derivative
    % s: star for \flatfrac flat derivative
    % o: optional n for nth derivative
    % m: mandatory (x in df/dx)
    % g: optional (f in df/dx)
    % d: long-form d/dx(...)
    \IfBooleanTF{#1}
    {\let\fractype\flatfrac}
    {\let\fractype\frac}
    \IfNoValueTF{#4}
    {
        \IfNoValueTF{#5}
        {\fractype{\diffd \IfNoValueTF{#2}{}{\sp{#2}}}{\diffd #3\IfNoValueTF{#2}{}{\sp{#2}}}}
        {\fractype{\diffd \IfNoValueTF{#2}{}{\sp{#2}}}{\diffd #3\IfNoValueTF{#2}{}{\sp{#2}}} \argopen(#5\argclose)}
    }
    {\fractype{\diffd \IfNoValueTF{#2}{}{\sp{#2}} #3}{\diffd #4\IfNoValueTF{#2}{}{\sp{#2}}}}
}
\DeclareDocumentCommand\dv{}{\derivative} % Shorthand for \derivative

是排版导数的命令,因此$\dv{x}{t}$会产生格式良好的 dx/dt 符号。此示例取自物理来自 CTAN 的包,但我在日常工作中使用了许多类似的宏。有没有办法在将文件传递给 pandoc 等之前将这些宏转换为标准 tex 标记,或者有没有办法将它们作为 html 转换过程的一部分进行转换,以便它们可以在 MathML 或 MathJax 中呈现?

答案1

如果要将数学转换为mathmltex4ht则只需要提供mathml选项:

htlatex filename "xhtml,mathml" 

对于您的示例,结果如下:

在此处输入图片描述

<math 
 xmlns="http://www.w3.org/1998/Math/MathML"  
display="inline" ><mfrac><mrow 
><mi mathvariant="normal">d</mi><mi 
>x</mi></mrow>
<mrow 
><mi mathvariant="normal">d</mi><mi 
>t</mi></mrow></mfrac> </math>

相关内容