답변1
사용
${k\in\{1\dots,K\}}$
${...}$
줄 바꿈을 할 수 없습니다
답변2
TeX는 이항 연산자 뒤 또는 관계 연산자 뒤 두 곳에서만 자동으로 수식을 깨뜨립니다. 매개변수 \binoppenalty
및 를 통해 제어됩니다 \relpenalty
. 둘 다 10000으로 설정하면 중단이 발생하지 않습니다. 수식에서 로컬로 수행하면 해당 수식에만 적용됩니다. 그래서 다음과 같은 정의는
\newcommand\nobreakformula{\relpenalty10000\relax \binoppenalty 10000\relax}
당신의 친구일 수도 있습니다(아마도 명령 이름이 더 짧을 수도 있습니다 :-))
수식에서 전체가 아닌 단일 중단만 방지하려면 \nolinebreak
TeX가 중단된 지점에서 사용할 수 있습니다. 그러나 상황에 따라 상황에 따라 훨씬 덜 바람직한 중단이 발생할 수도 있습니다(따라서 문서가 준비될 경우에만 이러한 종류의 미세 조정을 사용하십시오). 예를 들어 아래 쇼케이스에서 우리가 사용하는 $a+b =\nolinebreak c+d+e$
TeX는 깨질 것이고 a +
내 생각에는 등호 다음에 깨는 것보다 더 나쁘다고 생각합니다.
중괄호 그룹을 사용하거나 사용하는 것은 \mbox
선 내부에서 얼마나 늘어나거나 줄어들든 관계없이 공식이 항상 공칭 너비로 설정되기 때문에 덜 권장됩니다. 다음 예에서 이를 잘 볼 수 있습니다.
\documentclass{article}
\usepackage{calc}
\begin{document}
\newlength\normwidth
\newcommand\myline{A test $a+b=c$ with $1+1$ formulas inside}
\settowidth\normwidth{\myline}
Spreading a line b 0, 5,15,25 and 50 points:
\indent \mbox{\myline}
\makebox[\normwidth+5pt][s]{\myline}
\makebox[\normwidth+15pt][s]{\myline}
\makebox[\normwidth+25pt][s]{\myline}
\makebox[\normwidth+50pt][s]{\myline}
\bigskip
Contrast this with using a brace group or \verb=mbox= on the first formula:
\renewcommand\myline{A test ${a+b=c}$ with $1+1$ formulas inside}
\indent \mbox{\myline}
\makebox[\normwidth+5pt][s]{\myline}
\makebox[\normwidth+15pt][s]{\myline}
\makebox[\normwidth+25pt][s]{\myline}
\makebox[\normwidth+50pt][s]{\myline}
\bigskip
\newcommand\nobreakformula{\relpenalty10000\relax \binoppenalty 10000\relax}
Testing \verb=\nobreakformula=:
Some sample text to make this break inside the first formula
A test $ a+b=c + d + e$ with $1+1$ formulas inside
And now with suppression:
Some sample text to make this break inside the first formula
A test $\nobreakformula a+b=c + d + e$ with $1+1$ formulas inside
\end{document}
결과는 다음과 같습니다.