tex4ht: встроенные уравнения после подподраздела и теоремы

tex4ht: встроенные уравнения после подподраздела и теоремы

МВЭ:

\documentclass{amsart}
\newtheorem{theorem}{Theorem}
\begin{document}
\section{SecTmp}
\subsection{SubsecTmp}
\subsubsection{SubsubsecTmp}
\begin{theorem}
\end{theorem}
Here, \(H_n^i(X)\)
\end{document}

Скомпилированный tex4ebook, результат расширяет каждый символ \(H_n^i(X)\)в строку. Интересно, почему так происходит, и как это исправить.

решение1

Эта проблема вызвана ошибкой в ​​обработке теорем в TeX4ht. Кажется, что обработка абзацев запутана после окончания теоремы. Обычно абзац должен начинаться до слова "Here". Но в этом случае в вашу математику вставлено несколько абзацев, что приводит к тому, что части этого выражения разбиваются на несколько строк.

Я исправил это в исходниках TeX4ht. А пока можете использовать следующий .cfgфайл:

\Preamble{xhtml}
% \Configure{()}{\PicMath$}{$\EndPicMath}

\Configure{newtheorem}
   {\ifvmode\IgnorePar\fi\EndP
     \HCode{<div class="newtheorem">}\par\noindent\HCode{<span class="head">}}
   {\HCode{</span>}}
   {\ifvmode\IgnorePar\fi\EndP\HCode{</div>}\par\indent\ShowPar}
\let\MathPar\empty
\Configure{PicDisplay}
  {\edef\MathPar{\ifvmode par-\fi}\IgnorePar\endgraf\EndP
   \HCode{<div class="\MathPar math-display" \csname a:LRdir\endcsname >}}
  {\HCode{</div>}\par\ShowPar}  {}  {class="\MathPar math-display" }
\Css{div.par-math-display, div.math-display{margin-left: auto; margin-right: auto;text-align:center;}}
\begin{document}
\EndPreamble

Вот результат:

введите описание изображения здесь

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