我正在编写一份文档(如果重要的话,是双栏的),虽然普通文本可以很好地换行以适应结构,但是当我使用内联数学时,它往往会违反页边距。
例如,在下图中,R_{uniform} 部分应该从新行开始,因为当前行没有空间。
该定理使用的代码是:
\begin{theorem}\label{thm:different-qualities-improved-ranker}
There exists a \frf{} $\UniformRanking$ such that for any \qm{} $\qualityMatrix
\in[0,1]^{[2]\times[2]}$, the \diffqpg{} \DQPGDEF[\dqpg][2][2][\qualityMatrix]
[\UniformRanking] achieves \poa{} of at most $1.7$.
\end{theorem}
在哪里
\newcommand{\UniformRanking}{R_{uniform}}
是 R_{uniform} 的命令。
如何在需要时强制它开始新行,但不超过行长?
答案1
试想一下,如果 TeX 决定将内联数学放在下一行,文本会是什么样子……第一行的单词间距会太高。由于 TeX 是一个完美主义者,它宁愿忽略右边距,也不愿允许这种情况发生,并通过在overfull hbox
日志中插入警告来通知用户。
现在您可以通过以下几种方式来解决这个问题:
- 重写文本。在这种情况下,您可能希望公式前面的文本更长一些。我认为这是最好的解决方案,因为您不必在排版上做出妥协。
\\
在公式前面添加。这当然会破坏理由。- 通过使用 ,可以让 TeX 更随意一些
\begin{sloppypar}…
。我们的 TeX-Gurus 可能会在这里帮助你……我不太熟悉 TeX 的内部结构以及如何调整它们,抱歉 ;-)
除了这些通用解决方案之外,如何更改公式?那么长的索引看起来不太好……尤其是与其他公式结合使用时。$R_{\mathrm{uni}}$
例如,非常适合……至少在印刷方面。(通过使用查找和替换,在整个文档中更改这一点也相当容易)