
나는 "setspace" 패키지를 사용하여 내 문서의 형식을 두 배 간격(과제 요구 사항)으로 지정하고 있습니다. 하지만 내 섹션 헤더 중 하나는 두 줄을 차지하며 이러한 섹션 헤더는 단일 간격을 사용하는 것이 더 보기 좋습니다. 나는 계속해서 다음과 같이 수정했습니다.
Nunc venenatis nulla eu arcu pellentesque eu molestie nunc condimentum.
Donec sodales lacinia dictum.
Sed aliquam turpis quis enim bibendum pharetra.
This is the last paragraph in section i.
\singlespace
\section{The Next Section Which Has a Fairly Long Name that Stretches Over Two Lines}
\doublespace
This is the first paragraph in section i+1.
Cras ut tortor vel dui ultricies dapibus vitae sit amet nisi.
Aliquam rhoncus leo id eros volutpat faucibus.
Integer lectus elit, varius et semper eget, tristique vel odio.
이것은 (지금까지) 내 논문에서 제목에 두 줄이 필요한 유일한 경우이므로 이 해킹으로 이를 수정하는 것은 큰 문제가 아닙니다. 그러나 논문이 길어지고 섹션이 많아지면 이 해킹 방법을 여러 번 추가하는 것이 더 지루해질 수 있다고 생각합니다.
표시할 수 있는 방법이 있나요?한 번내 문서 전체에 이 해킹을 여러 번 추가하는 대신 섹션 제목은 한 간격으로, 단락은 두 배 간격으로 두어야 합니까?
답변1
당신은 사용할 수 있습니다etoolbox
\singlespacing
섹션 단위 바로 앞에 삽입한 다음 추가하는 패키지 \doublespacing
:
\documentclass{article}
\usepackage{setspace}
\usepackage{etoolbox}
\makeatletter
\pretocmd{\@sect}{\singlespacing}{}{}
\pretocmd{\@ssect}{\singlespacing}{}{}
\apptocmd{\@sect}{\doublespacing}{}{}
\apptocmd{\@ssect}{\doublespacing}{}{}
\makeatother
\doublespacing
\begin{document}
Nunc venenatis nulla eu arcu pellentesque eu molestie nunc condimentum.
Donec sodales lacinia dictum.
Sed aliquam turpis quis enim bibendum pharetra.
This is the last paragraph in section i.
\section{The Next Section Which Has a Fairly Long Name that Stretches Over Two Lines}
This is the first paragraph in section i+1.
Cras ut tortor vel dui ultricies dapibus vitae sit amet nisi.
Aliquam rhoncus leo id eros volutpat faucibus.
Integer lectus elit, varius et semper eget, tristique vel odio.
\end{document}
\section
이는 , \subsection
, 에 적용됩니다 \subsubsection
.
또 다른 옵션은titlesec
패키지:
\documentclass{article}
\usepackage{setspace}
\usepackage{titlesec}
\titleformat{\section}
{\singlespacing\normalfont\Large\bfseries}{\thesection}{1em}{}
\titleformat{\subsection}
{\singlespacing\normalfont\large\bfseries}{\thesubsection}{1em}{}
\titleformat{\subsubsection}
{\singlespacing\normalfont\normalsize\bfseries}{\thesubsubsection}{1em}{}
\doublespacing
\begin{document}
Nunc venenatis nulla eu arcu pellentesque eu molestie nunc condimentum.
Donec sodales lacinia dictum.
Sed aliquam turpis quis enim bibendum pharetra.
This is the last paragraph in section i.
\section{The Next Section Which Has a Fairly Long Name that Stretches Over Two Lines}
This is the first paragraph in section i+1.
Cras ut tortor vel dui ultricies dapibus vitae sit amet nisi.
Aliquam rhoncus leo id eros volutpat faucibus.
Integer lectus elit, varius et semper eget, tristique vel odio.
\end{document}
또는 축소된 구문을 사용하여:
\usepackage{titlesec}
\titleformat*{\section}{\normalfont\Large\bfseries\singlespacing}
\titleformat*{\subsection}{\normalfont\large\bfseries\singlespacing}
\titleformat*{\subsubsection}{\normalfont\normalsize\bfseries\singlespacing}
그런데 setspace
패키지는 여러 명령과 환경을 제공합니다. 명령(스위치)은 "ing"으로 끝나는 \singlespacing
반면 \onehalfspacing
, \doublespacing
환경은 singlespace
, onehalfspace
, 입니다 doublespace
.
\doublespace
당신이 하고 있는 일을 (스위치로) 사용하는 것은 완전히 정확하지 않습니다. 다음과 같은 간단한 문서:
\documentclass{article}
\usepackage{setspace}
\doublespace
\begin{document}
test
\end{document}
처리되면 출력 콘솔에 메시지가 표시됩니다.
(\end occurred inside a group at level 1)
### semi simple group (level 1) entered at line 4 (\begingroup)
\doublespace
이는 그룹이 시작되었지만 종료되지 않았음을 나타냅니다(이 경우 환경과 관련된 명령 으로 생성된 그룹 doublespace
). 스위치를 사용하는 올바른 형태는 다음과 같습니다.
\documentclass{article}
\usepackage{setspace}
\doublespacing
\begin{document}
test
\end{document}
해당 환경의 경우:
\documentclass{article}
\usepackage{setspace}
\begin{document}
\begin{doublespace}
test...
\end{doublespace}
\end{document}
답변2
"표준" 문서 클래스 중 하나( article
, report
및 book
-) 또는 표준 클래스 중 하나를 기반으로 하는 문서 클래스를 사용하는 경우 간단한 솔루션은 패키지를 로드 하고 프리앰블에서 sectsty
명령을 실행하는 것입니다 .\allsectionsfont{\singlespacing}
MWE(최소 작업 예):
\documentclass{article}
\usepackage{setspace,lipsum}
\doublespacing
\usepackage{sectsty}
\allsectionsfont{\singlespacing}
\begin{document}
\lipsum[1] % filler text
\section{The Next Section Which Has a Fairly Long Name that Stretches Over Two Lines}
\lipsum[2] % more filler text
\end{document}