Преобразование команд 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, но я использую ряд похожих макросов в повседневной работе. Есть ли способ преобразовать эти макросы в стандартную разметку tex перед передачей файла, например, pandoc, или есть ли способ преобразовать их как часть процесса преобразования html, чтобы их можно было отрисовать в MathML или MathJax?

решение1

Если вы хотите преобразовать математику в mathmlс помощью tex4ht, вам нужно только указать 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>

Связанный контент