Я знаю, как можно увеличить/уменьшить/изменить межстрочный интервал в LaTeX, но мне кажется, что вручную устанавливать его \vspace{-5pt}
каждый раз, когда мне нужно, чтобы две строки были ближе друг к другу, — это хак. Думаю, я мог бы придумать лучшее решение, если бы изначально понимал, почему LaTeX делает то, что делает.
Например, при составлении резюме у меня есть следующие новые среды для определения заголовков разделов, проектов и пунктов списка:
% A section:itemized is a main section with a header and some items within it
\newenvironment{section:itemized}[1]{
{\fontfamily{cmr}\selectfont\Large\scshape#1}
\begin{itemize}
}{
\end{itemize}
}
% Displays info about a job and holds list items describing what
% projects were completed there
\newenvironment{item:experience:itemized}[4]{
\item[]
\textbf{\scshape#1}, \hfill \textbf{#2} \\ % Show company and dates
\textit{\scshape#3}\hfill #4 % Show position and location
\begin{itemize}
}{
\end{itemize}
}
% This is a project heading and requires list items that can be bullet
% points describing the project
\newenvironment{item:project:itemized}[3]{
\itemprojectandtech{#1}{#2} \\
\textit{#3}
\begin{itemize}
}{
\end{itemize}
}
% An itembulleted is a simple list element
\newcommand{\itembulleted}[1]{
\item \begin{flushleft} #1 \end{flushleft}
}
В одном месте своего резюме я использую a section:itemized
для создания раздела «Опыт». Внутри него находятся item:experience:itemized
пункты, и все они содержат item:project:itemized
пункты, содержащие itembulleted
сведения о проекте. В другом месте своего резюме я использую a section:itemized
для создания раздела «Другие проекты», содержащего project:itemized
пункты, содержащие itembulleted
сведения.
Если это сделано в разделе «Другие проекты», то между каждым маркированным пунктом и перед ним оставляют более широкий интервал между строками, чем в разделе «Опыт».
Вот пример кода:
\begin{section:itemized}{Experience}
\begin{item:experience:itemized}{Super Company}{September 2016 - present}{Head of Stuff}{Mytown, USA}
\begin{item:project:itemized}{Cool Project}{Technology, other technology}{Thing that's going away}
\itembulleted{Here are a bunch of words that describe this project.}
\itembulleted{And even more words because it was a really cool project and there are things to say.}
\end{item:project:itemized}
\end{item:experience:itemized}
\end{section:itemized}
%%%%%%%%%%%%%%%%%%%%%%%%
\begin{section:itemized}{Other Projects}
\begin{item:project:itemized}{Cool Project}{Technology, other technology}{Thing that's going away}
\itembulleted{Here are a bunch of words that describe this project.}
\itembulleted{And even more words because it was a really cool project and there are things to say.}
\end{item:project:itemized}
решение1
Пример OP демонстрирует вложенные itemize
среды, что означает, что \item
команды появляются на разных уровнях.
Окружающая itemize
среда имеет различные значения интервалов для отдельных упругих длин, которые контролируют вертикальные расстояния линий \item
, это
\topsep
\itemsep
\parsep
\partopsep
Вместе \topsep
с \partopsep
и \parskip
управляет интервалом между верхней частью среды и первым \item
содержимым, а также нижней частью среды, т. е. последней строкой последнего \item
и началом следующего содержимого, не являющегося средой.
\itemsep+
\parsep`` отвечает за разделение последней строки содержимого \item
и следующей \item
.
В этом небольшом документе показаны стандартные значения для article
.
\documentclass{article}
\newcommand{\niceintern}[1]{%
\texttt{#1}: \the\csname #1\endcsname
}
\newcommand{\niceoutput}{%
\niceintern{itemsep}
\niceintern{parsep}
\niceintern{partopsep}
\niceintern{topsep}
}
\begin{document}
\begin{itemize}
\item First level
\niceoutput
\begin{itemize}
\item Second level
\niceoutput
\begin{itemize}
\item Third level
\niceoutput
\begin{itemize}
\item Fourth level
\niceoutput
\end{itemize}
\end{itemize}
\end{itemize}
\end{itemize}
\end{document}