我怎样才能在电子邮件上方留出一些空间?
已尝试过newline
,hspace
但\\
无济于事。
\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
在序言之前添加空格\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}