答案1
避免在数学模式中使用不必要的连接线。如果您希望一小段数学代码在换行符处保持在一起,请将其包裹在方框 ( \mbox
) 内:
\documentclass{article}
% https://tex.stackexchange.com/a/137076/5764
\newcommand{\Mod}[1]{\ (\mathrm{mod}\ #1)}
\begin{document}
Zatem rozwiazaniem kongruecji $7^x \equiv 6 \Mod{17}$ calkowite~$x$ takie, ze $x \equiv 13 \Mod{16}$.
Zatem rozwiazaniem kongruecji $7^x \equiv 6 \Mod{17}$ calkowite~$x$ takie, ze \mbox{$x \equiv 13 \Mod{16}$}.
\end{document}
请注意,由于将第二个全等式放在了不可拆分的框内,因此第一个全等式的间距与第二个全等式的间距不匹配。这应该已经表明,最好让 (La)TeX 决定在最佳位置拆分数学内容。
答案2
如果你这样做\show\pmod
,你会看到其定义中的第一个是\allowbreak
宏。你可以使用\patchcmd
命令从etoolbox 包。
\documentclass{article}
\usepackage{lipsum} % For dummy text
\usepackage{etoolbox}
\patchcmd{\pmod}{\allowbreak}{}{}{}
\begin{document}
\lipsum[1-2]
a\hspace{270pt}b $x~\equiv~13~\pmod{16}$
\end{document}
答案3
在这样的公式中,$x\equiv 13 \pmod{16}$
有两个可行的断点:之后\equiv
和之前\pmod
。
第一个可以通过使用删除\nolinebreak
(但在你的情况下这不会执行任何操作),而第二个是通缉;没有必要将“(mod 16)”与“X ≡ 13”。在你的具体情况下,这条线已经相当松散,并且推动了整个“X ≡ 13 (mod 16)” 到下一行将产生一个未满的行(或过满,取决于几种条件)。
以下是一个例子:
如你所见,第二段写得非常糟糕。第一段也不是最好的,但是读者在看到 ≡ 符号后会期待“mod”子句,所以把它放在下一行没有问题。
另一方面,如果你加载microtype
,该行将排版而没有溢出:
\documentclass[a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[polish]{babel}
\usepackage{geometry}
\usepackage{microtype}
\usepackage{amsmath}
\begin{document}
\noindent
Zatem rozwiązaniem kongruencji $7^x \equiv 6 \pmod{17}$ są liczby
calkovite $x$ takie, że $x \equiv 13 \pmod{16}$.
\end{document}
加载geometry
包时无需输入任何内容即可microtype
产生您显示的精确输出,因此我猜这是您的设置。
无论如何,这些细节应该只在文档制作的最后阶段进行检查:我更喜欢在 (mod 16) 之前换行,而不是非常松散的行。但在早期阶段“修复”它可能会导致浪费时间,因为文本可能会在最终版本之前进行编辑。