\noindent가 \rlap과 \llap.에 왜 그런 영향을 미치나요?

\noindent가 \rlap과 \llap.에 왜 그런 영향을 미치나요?

\noindent가 없으면 \rlap과 \llap은 매번 \baselineskip만큼 아래로 이동하는 것처럼 보입니다. 이것은 고의적인 것입니까?

\documentclass{article}
\usepackage{xcolor}

\begin{document}
\color{red}
\rlap{\rule{.25in}{1ex}}\rlap{\rule{.25in}{1ex}}\rlap{\rule{.25in}{1ex}}

\color{blue}
\noindent\rlap{\rule{.25in}{1ex}}\rlap{\rule{.25in}{1ex}}\rlap{\rule{.25in}{1ex}}

\color{green}
\llap{\rule{.25in}{1ex}}\llap{\rule{.25in}{1ex}}\llap{\rule{.25in}{1ex}}

\color{black}
\noindent\llap{\rule{.25in}{1ex}}\llap{\rule{.25in}{1ex}}\llap{\rule{.25in}{1ex}}
\end{document}

컬러 바

답변1

\rlap와 는 모두 \llap다음과 같이 정의됩니다.\hbox

\def\rlap#1{\hb@xt@\z@{#1\hss}}
\def\llap#1{\hb@xt@\z@{\hss#1}}

어디

\def\hb@xt@{\hbox to}

그러나 \hbox문단을 시작하는 데는 문단을 사용할 수 없습니다. \noindent또는 같은 것을 사용하여 명시적으로 수평 모드로 전환해야 합니다 \leavevmode. (자세한 내용은 주제별 TeX 섹션 16.3을 참조하세요.)

다음은 MWE가 예상한 대로 좀 더 행동하는 모습입니다.

\documentclass{article}
\usepackage{xcolor}
\newcommand\aelap[1]{\makebox[0pt][r]{#1}}
\begin{document}

\color{red}
\leavevmode\rlap{\rule{.25in}{1ex}}\rlap{\rule{.25in}{1ex}}\rlap{\rule{.25in}{1ex}}

\color{blue}
\noindent\rlap{\rule{.25in}{1ex}}\rlap{\rule{.25in}{1ex}}\rlap{\rule{.25in}{1ex}}

\color{green}
\leavevmode\llap{\rule{.25in}{1ex}}\llap{\rule{.25in}{1ex}}\llap{\rule{.25in}{1ex}}

\color{black}
\noindent\llap{\rule{.25in}{1ex}}\llap{\rule{.25in}{1ex}}\llap{\rule{.25in}{1ex}}

\end{document}

여기에 이미지 설명을 입력하세요

관련 정보