
我有这种情况:
可以看出,两个数学字符串超出了页面几何范围。我使用的文档类是MastersDoctoralThesis
,并且可用这里。
有一种方法可以自动换行内联数学?或者有什么方法可以避免这个问题?
这是包含数学文本的文本部分:
\begin{enumerate}
\item Un vettore $\mathcal{F}$ di dimensione $\sigma = |\Sigma|$ nel quale salvare le frequenze cumulative degli ultimi caratteri delle etichette dei nodi.
Ovvero, $\mathcal{F}[c] = |\Set{i | 1 \leq i \leq m, C(i) < c}|$, dove $C(i)$ indica
l'ultimo carattere di $Node[i]$. Viene rappresentato con $\mathcal{O}(\sigma\log m)$ bits.
\end{enumerate}
更新
另一个超出几何范围的数学文本的例子:
正文如下:
Un \textbf{suffix array}~\cite{doi:10.1137/0222058}, ($SA_X$), è
una rappresentazione
succinta dell'ordinamento lessicografico di tutti i suffissi di una strina $X$.
Più precisamente, $SA_X$ è un array $SA[1\dots n]$ che contiene tutte le permutazioni
degli interi $[1\dots n]$ tale che $X[SA[1]\dots n] \prec X[SA[2]\dots n] \prec
\dots \prec X[SA[n]\dots n]$.
我也尝试wrap
例如SA
但\text{}
问题仍然存在。
答案1
在braket
包中,\Set
定义如下:
\xdef\Set{\protect\expandafter\noexpand\csname Set \endcsname}
\expandafter\gdef\csname Set \endcsname#1{\left\{%
\ifx\SavedDoubleVert\relax \let\SavedDoubleVert\|\fi
\:{\let\|\SetDoubleVert
\mathcode`\|32768\let|\SetVert
#1}\:\right\}}
我认为\left
和right
阻止了换行。您可以选择重新定义\Set
命令或定义之二命令,以防您需要它来打破界限。另外,我认为\Set
扩大了导致超出的框\mathcal{O}(\sigma\log m)
。
无论如何我将其定义如下:
\newcommand{\Setbis}[2]{\{#1 \mid #2 \,\}}
...
\begin{enumerate}
\item Un vettore $\mathcal{F}$ di dimensione $\sigma = |\Sigma|$ nel quale salvare le frequenze cumulative degli ultimi caratteri delle etichette dei nodi.
Ovvero, $\mathcal{F}[c] = |\Setbis{i}{1 \leq i \leq m, C(i) < c}|$, dove $C(i)$ indica
l'ultimo carattere di $\text{Node}[i]$. Viene rappresentato con $\mathcal{O}(\sigma\log m)$ bits.
\end{enumerate}
输出如下:
编辑:正如@Sebastiano 在评论中指出的那样,最好使用$\text{Node}[i]$
而不是$Node[i]$
。我根据此更新了我的代码和输出。