![删除 moderncv 中的空白行](https://linux22.com/image/418315/%E5%88%A0%E9%99%A4%20moderncv%20%E4%B8%AD%E7%9A%84%E7%A9%BA%E7%99%BD%E8%A1%8C.png)
moderncv
我目前正在使用 Overleaf创建简历。我使用的是pdfLaTeX
TeX Live 的 2014(旧版)版本。(我试图重用教授提供的模板,如果使用较新的版本,该模板会显示不正确)。在使输出正确显示方面,我仍遇到一些问题。这是我的代码:
\documentclass[11pt,a4paper,roman]{moderncv}
\moderncvstyle{banking}
\moderncvcolor{black}
\usepackage[utf8]{inputenc}
\usepackage[scale=0.76]{geometry}
\name{John}{Doe}
\title{Resumé tite}
\address{street and number}{postcode city}{country}
\phone[mobile]{+1~(234)~567~890}
\phone[fixed]{+2~(345)~678~901}
\phone[fax]{+3~(456)~789~012}
\email{[email protected]}
\begin{document}
\makecvtitle
\section{EMPLOYMENT}
\vspace{1pt}
\cventry{}{}{Assistant Professor}{Since March 2020}{}{Department
of LaTeX, Science University}{}
% --------------------------------------------------------------------
\section{EDUCATION}
\vspace{1pt}
\cventry{}{}{PhD, Science University}{2019}{}
{Thesis title: \textit{Lorem Ipsum} \\ Supervisor: Jacob Smith}{}
\end{document}
我希望能够增加标题行和地址行之间的垂直间距。我还想删除粗体文本和下方普通文本之间的空白行(例如“助理教授”和“科学大学 LaTeX 系”)。
答案1
我希望能够增加标题行和地址行之间的垂直空间。
如果你使用的是banking
moderncv的风格,则的定义\makehead
如下moderncvheadiii.sty
:
\@initializecommand{\makehead}{%
\setlength{\makeheaddetailswidth}{0.8\textwidth}%
\hfil%
\parbox{\makeheaddetailswidth}{%
\centering%
\namestyle{\@firstname~\@lastname}%
\ifthenelse{\equal{\@title}{}}{}{\titlestyle{~|~\@title}}\\
\if@details{%
\addressfont\color{color2}%
\ifthenelse{\isundefined{\@addressstreet}}{}{\addtomakeheaddetails{\addresssymbol\@addressstreet}%
\ifthenelse{\equal{\@addresscity}{}}{}{\addtomakeheaddetails[~--~]{\@addresscity}}%
\ifthenelse{\equal{\@addresscountry}{}}{}{\addtomakeheaddetails[~--~]{\@addresscountry}}%
...
}
因此,您需要做的就是对此进行修改,在\\
和之间插入一些垂直空间\if@details
。这是您需要\makecvtitle
在文档中执行的所有修改:
\begin{document}
\makeatletter
\let\if@detailsoriginal\if@details
\def\if@details{\vskip1.0\baselineskip\if@detailsoriginal}
\makecvtitle
\let\if@details\if@detailsoriginal
\makeatother
您可以通过修改 的值来改变空间量1.0\baselineskip
。
我还想删除粗体文本和下方普通文本之间的空行(例如“助理教授”和“科学大学 LaTeX 系”)。
如果你使用的是banking
moderncv的风格,则的定义\cventry
如下moderncvbodyiii.sty
:
\renewcommand*{\cventry}[7][.25em]{
\begin{tabular*}{\maincolumnwidth}{l@{\extracolsep{\fill}}r}%
{\bfseries #4} & {\bfseries #5}\\%
{\itshape #3\ifthenelse{\equal{#6}{}}{}{, #6}} & {\itshape #2}\\%
\end{tabular*}%
...
}
您会在里面看到一个 tabular* 环境。因此,您需要做的是更改\arraystretch
。例如,如果您在序言中写下此内容,则可以通过设置拉伸零来打破粗体文本和普通文本之间的夹线:
\let\cventryoriginal\cventry
\def\cventry#1#2#3#4#5#6#7{\bgroup\renewcommand\arraystretch{0}\cventryoriginal{#1}{#2}{#3}{#4}{#5}{#6}{#7}\egroup}
同样,您可以通过修改的值来更改垂直空间的数量\arraystretch{0}
。
更新:至moderncv 2012 ver。
\makecvtitle
所调用的title 命令\maketitle
在 moderncvstylebanking.sty 中定义如下:
\renewcommand*{\maketitle}{%
\setlength{\maketitlewidth}{0.8\textwidth}%
\hfil%
\parbox{\maketitlewidth}{%
\centering%
\namestyle{\@firstname~\@familyname}%
\ifthenelse{\isundefined{\@title}}{}{\titlestyle{~|~\@title}}\\%
\addressfont\color{color2}%
\ifthenelse{\isundefined{\@addressstreet}}{}{\addtomaketitle{\addresssymbol\@addressstreet}%
\ifthenelse{\equal{\@addresscity}{}}{}{\addtomaketitle[~--~]{\@addresscity}}\flushmaketitle\@firstmaketitleelementtrue\\}
...
}
因此,您需要做的就是对此进行修改,在\\
和之间插入一些垂直空间\addressfont
。这是您需要\makecvtitle
在文档中执行的所有修改:
\begin{document}
\let\addressfontoriginal\addressfont
\def\addressfont{\vskip1.0\baselineskip\addressfontoriginal}
\makecvtitle
\let\addressfont\addressfontoriginal
您可以通过修改 的值来改变空间量1.0\baselineskip
。