如何在长数学表达式中创建自动中断

如何在长数学表达式中创建自动中断

有没有一种方法可以让长数学表达式在超出文档正文范围时(且仅当)自动中断?

例如,我希望以下内容可以分成两行如果(且仅当)它位于一列较窄的文本中(例如,如果<class>IEEEtran),否则仍保留在一行中(例如,<class>如果是article),只要它适合单个(更宽)的列即可。

\documentclass{article}
\usepackage{lipsum}

\begin{document}

\lipsum[1]
\[ 
\hat{S}=\sum_{l\in\left\{ 1,\ldots L\right\} }\left[\bigl[1\!-\! f_{p}(l\!+\!1)\bigr]\;\overline{w}(l-1)\;\biggl[\,\prod_{i=0}^{l-1}\; f_{p}(i)\;\,\overline{\! N}(i)\biggr]\;\hat{H}_{S}(l-1)\right]
\]   
\lipsum[2]

\end{document}

答案1

为了结合对问题的一些评论,这个答案使用了breqn包并分别将\[\]命令重新定义为\begin{dmath}\end{dmath}

代码:

\documentclass[12pt]{book}
\usepackage{lipsum}
\usepackage[]{breqn}

\renewcommand\[{\begin{dmath}}
\renewcommand\]{\end{dmath}}

\begin{document}

\lipsum[1]
\[
\hat{S}=\sum_{l\in\left\{ 1,\ldots L\right\} }\left[\bigl[1\!-\! f_{p}(l\!+\!1)\bigr]\;\overline{w}(l-1)\;\biggl[\,\prod_{i=0}^{l-1}\; f_{p}(i)\;\,\overline{\! N}(i)\biggr]\;\hat{H}_{S}(l-1)\right]
\]
\lipsum[2]

\end{document}

相关内容