我想转换所有的 inline-math 和 display-math 应该LaTeX
只用于格式而不是图像。我曾提到tex4ht 保持方程不变和tex4ht 保持方程不变 - 包括 \[...\] 和 \(...\). 但作者定义的宏不会转换为HTML
。
LaTeX 最小二乘法:
\documentclass{article}
\usepackage{amsmath,amssymb}
\newcommand{\La}{\Lambda}
\def\B{\beta}
\newcommand{\twosilt}{\mbox{\rm 2-silt}}
\begin{document}
In this section, we $\B$ recall some definitions and results.
Throughout $\alpha+\B$ this section, let ${\La}$ be a finite dimensional algebra.
\begin{equation*}
\Phi:\Lambda\longrightarrow\twosilt\Lambda,\ \ \ (X,P)\mapsto \Phi(X,P):=P_X\oplus P[1].
\end{equation*}
\end{document}
如何实现这个目标?
答案1
我不太确定,你正在寻找什么,你链接到的问题和答案的目的恰恰不是将宏转换为 html,而是使用 mathjax 等工具进行处理。尝试这个配置文件,其中包含 mathjax 的宏定义:
\usepackage{verbatim}
\Preamble{xhtml}
% Configure for mathjax
\Configure{VERSION}{}
\Configure{DOCTYPE}{\HCode{<!DOCTYPE html>\Hnewline}}
\Configure{HTML}{\HCode{<html>\Hnewline}}{\HCode{\Hnewline</html>}}
\Configure{@HEAD}{\HCode{
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
TeX: {
Macros: {
\unexpanded{La : "\\Lambda",
B: "\\beta",
twosilt: "\\textrm{2-silt}",}
}
},
extensions: ["tex2jax.js"],
tex2jax: {
\unexpanded{
inlineMath: [ ['\$','\$'], ["\\\\(","\\\\)"] ],
displayMath: [ ['$$','$$'], ["\\[","\\]"] ],}
processEscapes: true
}
});
</script>
}}
\Configure{@HEAD}{\HCode{<script type="text/javascript"\Hnewline
src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"\Hnewline
></script>\Hnewline}}
\newtoks\eqtoks
\def\AltMath#1${\eqtoks{$#1$}%
\HCode{\the\eqtoks}$}
\Configure{$}{}{}{\expandafter\AltMath}
\def\AltlMathI#1\){\eqtoks{\(#1\)}%
\HCode{\the\eqtoks}}
\Configure{()}{\AltlMathI}{}
\def\AltlDisplay#1\]{\eqtoks{\[#1\]}%
\HCode{\the\eqtoks}}
\Configure{[]}{\AltlDisplay}{}
\begin{document}
\newcommand\VerbMath[1]{%
\renewenvironment{#1}{%
\NoFonts%
\string\begin\{#1\}%
\verbatim}{\endverbatim\string\end\{#1\}\EndNoFonts}%
}
\VerbMath{equation*}
\EndPreamble
我结合了“保持方程不变”中的定义,添加了宏的定义mathjax
并创建了新命令\VerbMath
。您需要对每个数学环境使用此命令,就像equation*
您的情况一样。它还会保持数学环境不变。将此文件命名为myconfig.cfg
。
我还对您的示例文件进行了稍微的编辑:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{amsmath,amssymb}
\newcommand{\La}{\Lambda}
\def\B{\beta}
\newcommand{\twosilt}{\mbox{\rm 2-silt}}
\begin{document}
In this section, we $\B$ recall some definitions and results.
Throughout $\alpha+\B$ this section, let ${\La}$ be a finite dimensional algebra.
\begin{equation*}
\Phi:\Lambda\longrightarrow\twosilt\Lambda,\; (X,P)\mapsto \Phi(X,P):=P_X\oplus P[1].
\end{equation*}
\end{document}
我添加了fontenc
包以便正确转换所有字符,并\ \ \
在您的等式中用替换\;
。我想您想要更大的空间,但\
似乎不受 mathjax 支持。
现在你可以使用以下命令编译你的文件:
htlatex mwo myconfig
你可以看到结果这里