ModernCV 创建空白页

ModernCV 创建空白页

我已经创建了一个文本,但作为示例,我创建了这个简单的文本

\documentclass[a4paper,12pt,danish]{moderncv}
\moderncvtheme{classic}
\usepackage{babel}
\usepackage{lipsum}
\pagestyle{empty}
\firstname{}
\familyname{}
\address{a\\b,}{c}
\begin{document}
\recipient{a}{a}
\opening{a}
\closing{a}
\makelettertitle
\lipsum[1-3]
\makeletterclosing
\end{document}

但我想知道,为什么这会创建一个空白页作为第 2 页?

答案1

\makeletterclosing如果你查看文件中的代码,moderncvstyleclassic.sty你会看到以下内容:

\renewcommand*{\makeletterclosing}{
  \@closing\\[3em]%
  {\bfseries \@firstname~\@familyname}%
  \ifthenelse{\isundefined{\@enclosure}}{}{%
    \\%
    \vfill%
    {\color{color2}\itshape\enclname: \@enclosure}}}

后面有一个垂直间距为 3em 的换行符\@closing,这会导致分页。

将其添加到您的文档序言中,我所做的就是摆脱强制换行符。

\makeatletter
\renewcommand*{\makeletterclosing}{
  \@closing%\\[3em]%
  {\bfseries \@firstname~\@familyname}%
  \ifthenelse{\isundefined{\@enclosure}}{}{%
    \\%
    \vfill%
    {\color{color2}\itshape\enclname: \@enclosure}}}
\makeatother

如果您只使用两段文字lipsum,即,则不会出现空白页。所以一切都与边距有关。显然,如果您要插入和,\lipsum[1-2]您不想删除换行符,因为它们将与位于同一行。firstnamefamilynameclosing

相关内容