脚注

脚注

我怎样才能在电子邮件上方留出一些空间?

图片

已尝试过newlinehspace\\无济于事。

\documentclass[10pt, a4paper]{moderncv}

%% ModernCV themes
\moderncvstyle{classic}
\moderncvcolor{red}

%% Character encoding
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}

%% Personal data
\firstname{John}
\familyname{Doe}
\address{Don Knuth Street, 42}{Tex City}
\newline
\\
\hspace{0.5cm}
\email{[email protected]}
\setlength{\fboxsep}{0pt}
\photo[64pt][0.8pt]{placeholder.png}

\begin{document}
\makecvtitle
\end{document}

类似问题1但我还没有解决方案

脚注

1 moderncv 地址部分出现换行符

答案1

在序言之前添加空格\begin{document}根本行不通。

moderncv 所做的是收集所有信息:姓名、地址、电子邮件、社交、照片,然后根据风格(在您的情况下为经典风格)构建标题。为了收集信息,moderncv 定义了收集所述信息的宏。例如,定义名称的宏称为\firstname\familyname。宏将名称作为参数。

这就是为什么在序言中写下这些宏的顺序并不重要,只要宏出现在之前即可\makecvtitle。您可以先写地址,然后写名字,或者先写名字,再写图片,然后写地址……最终您会得到经典的设计。

设计使用 来tabular将所有内容都放到位。控制空间的一个选项是修补moderncvheadi.sty定义文件。但这相当复杂。

一个简单的办法就是在地址中添加一行。由于地址宏可能需要几行,因此只需添加另一行即可:

\address{Don Knuth Street, 42}{Tex City}{~}

注意,添加的行~中包含字符。如果只添加一个空行,该字符{}将被忽略,添加这个小空格会导致打印该行。

另一种方法是调用 moderncv 宏来创建新行\makenewline

\address{Don Knuth Street, 42}{Tex City\makenewline}

最后,如果您需要调整空间的大小,可以使用以下支柱

\address{Don Knuth Street, 42}{Tex City}{\rule{0pt}{20pt}}

第二个参数定义了\rule你的地址的高度。

\\ \newline或添加\hspace到地址宏将不起作用,因为宏的构建是为了摆脱冗余空间以产生其产生的紧密的盒子。

梅威瑟:

\documentclass[10pt, a4paper]{moderncv}
\usepackage{graphicx}

%% ModernCV themes
\moderncvstyle{classic}
\moderncvcolor{red}

%% Character encoding
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}

%% Personal data
\email{[email protected]}
\firstname{John}
\photo[64pt][0.8pt]{placeholder.png}
\familyname{Doe}
\address{Don Knuth Street, 42}{Tex City}{\rule{0pt}{20pt}}
%\address{Don Knuth Street, 42}{Tex City\makenewline}
%\address{Don Knuth Street, 42}{Tex City}{~}
\familyname{Doe}
\setlength{\fboxsep}{0pt}


\begin{document}
\makecvtitle
\end{document}

相关内容