일반적으로 \vspace에 접착제를 삽입하는 것이 좋은 생각입니까?

일반적으로 \vspace에 접착제를 삽입하는 것이 좋은 생각입니까?

이런 글 많이 봤는데\parskip이 예상보다 많이 늘어납니다.내부에 접착제를 사용합니다 \vspace. \vspace모든 경우에 일반적인 명령을 대체하기 위해 접착제를 사용하여 새 명령을 정의하는 것이 좋은 생각인지 궁금합니다 . 다음과 같은 것

\newcommand{\vspacewithglue}[3]{\vspace{#1\baselineskip plus #2\baselineskip minus #3\baselineskip }}

나는 간단한 경우에 그러한 명령이 유용하다는 점을 스스로 설득하려고 노력했지만 성공하지 못했습니다. 예를 들어, 나는

some test line ffppp \vspacewithglue{2}{0}{0}\\
some test line ffppp \vspacewithglue{2}{-1}{1}\\
some test line ffppp \vspacewithglue{2}{1}{1}\\

아무런 차이 없이. 그래서 나는 다소 혼란스러워요. 실제로 그러한 명령이 필요한 "특별한" 경우(위 게시물과 같은)가 있을 수 있지만 일반적으로 필요하지 않습니다. 어쩌면 잘 알려진 명령을 사용 \\[...ex]하고 실제로 필요할 경우 TeX에 접착제를 바르는 것이 더 나을 수도 있습니다.

이 질문이 다소 모호하거나 이미 답변되었을 수도 있다는 것을 알고 있습니다. 자유롭게 수정하거나 댓글로 무엇인가를 제안해 주세요.

답변1

질문에서처럼 단락 줄 사이에 신축성 접착제를 사용하는 것은 거의 좋은 생각이 아닙니다. 단락은 일관된 블록으로 설정되어야 합니다. 문서 디자인에 따라 단락, 목록 등과 같은 표시 단위 사이의 접착제를 늘릴 수도 있고 원하지 않을 수도 있습니다. 특히 두 열 모드에서는 두 열의 단락 공간이 다르고 텍스트의 기준선이 전혀 정렬되지 않기 때문에 단락 사이의 신축성 접착제가 방해가 될 수 있습니다.

또한 단락 내에서 사용하는 질문에서와 같이 \vspace효과가 잘 정의되어 있지만 약간 이상한 경우: 공백은 명령 지점에 추가되지 않고 \vspace나중에 단락이 줄로 나누어진 후 줄 뒤에 추가됩니다. 가 vspace추가되었습니다.

some test line ffppp \vspace{10pt}\\

와 같다

some test  \vspace{10pt}line ffppp\\

\raggedbottom기사 문서 클래스에서 일반적 으로 발생하는 것처럼 fil페이지 끝에 접착제가 추가되면 무한히 늘어날 수 있으므로 추가된 유한 스트레치 접착제는 늘어나지 않고 자연 길이 구성 요소만 사용됩니다.

일부 문서 클래스(기본 문서 포함)에서는 단락 사이를 약간 늘리는 것이 페이지 나누기를 돕는 데 유용할 수 있지만(라텍스는 기본값을 \parskip로 설정함 0pt plus 1pt) 일반적으로 이는 각 경우에 수동으로 조정되지 않는 문서 전체 설정이어야 합니다.

특별한 상황에서 줄 바꿈을 늘려야 하는 경우 사용할 수 있는 새 명령이 필요하지 않습니다.\\[5pt plus 5pt]

답변2

귀하의 명령은 예상대로 작동하지만 David가 이미 작성한 것처럼 단락 내부에 확장 가능한 공간을 사용하는 것은 매우 나쁜 생각입니다.

\documentclass[12pt]{book}
\usepackage{lipsum}

\newcommand{\vspacewithglue}[3]{\vspace{#1\baselineskip plus #2\baselineskip minus #3\baselineskip }}
\textheight=10cm
\begin{document}
xxxxx

some test line ffppp \\
some test line ffppp \vspacewithglue{0}{1}{1}\\
some test line ffppp \\


xxxxx
\pagebreak %to force the page to stretch

xxxx
\end{document}

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

관련 정보