moderncv 开头的多列

moderncv 开头的多列

我把简历的开头改成了

\documentclass[11pt,a4paper,sans]{moderncv}        

\moderncvstyle{classic}                             

\moderncvcolor{blue}                               

\usepackage[utf8]{inputenc}                       

\usepackage[scale=0.75]{geometry}

\makeatletter
\renewcommand*{\makecvtitle}{%
  \recomputecvlengths%
  % detailed information box
  \newbox{\makecvtitledetailsbox}%
  \savebox{\makecvtitledetailsbox}{%
    \addressfont\color{color2}%
    \begin{tabular}[b]{@{}p{10cm}@{}}%
      \ifthenelse{\isundefined{\@addressstreet}}{}{\makenewline\addresssymbol\@addressstreet %
        \ifthenelse{\equal{\@addresscity}{}}{}{\makenewline\@addresscity}} % 
      \ifthenelse{\isundefined{\@mobile}}{}{\makenewline\mobilesymbol\@mobile} %
      \ifthenelse{\isundefined{\@email}}{}{\makenewline\emailsymbol\emaillink{\@email}}%
    \end{tabular}
  }%
  % name and title
  \newlength{\makecvtitledetailswidth}\settowidth{\makecvtitledetailswidth}{\usebox{\makecvtitledetailsbox}}%
  \ifthenelse{\lengthtest{\makecvtitlenamewidth=0pt}}% 
    {\setlength{\makecvtitlenamewidth}{\textwidth-\makecvtitlepicturewidth
}}%
    {}%
    \raggedright\namestyle{\@firstname\ \@familyname}\par\medskip%
    \ifthenelse{\equal{\@title}{}}{}{{\centering\titlestyle{\@title}\par}\medskip}%
\usebox{\makecvtitledetailsbox}%
  \par}% 
\makeatother

\name{John}{Doe}

\address{street and number}{postcode city}{country}

\email{[email protected]}                               

\begin{document}

\makecvtitle

\end{document}
 

输出(见下页)是 在此处输入图片描述

由于某种原因,它在 WinEdt 中不起作用!

但问题是,名字不在中心。

我还希望在一列(左侧)中显示“街道和号码”和“邮政编码城市”,并在旁边的另一列(右侧)中显示电子邮件和电话号码。

有人可以帮我吗?

答案1

我同意一些评论,如果你想彻底重新设计一切,就没有理由使用 moderncv。

但是如果你喜欢 moderncv 的其他功能,只是想更改命令\makecvtitle,那么这应该是可行的。你可以用比你之前使用的代码更简单的代码来实现它——我不确定你从哪里得到的代码,因为我怀疑它不是你自己写的……如果你事先知道要提供哪些联系人数据,那么你给出的重新定义中的许多复杂性都会被消除。

这里我用 s 分隔了地址/联系信息的两“列” \hfill,使第二列与页面右侧右对齐。您可能不希望这样,在这种情况下,必须采取不同的措施,但事情可以相当简单。

\mobile由于命令设置不正确,我还重新定义了该命令\@mobile

\documentclass[11pt,a4paper,sans]{moderncv}
\moderncvstyle{classic}
\moderncvcolor{blue}
\usepackage[utf8]{inputenc}
\usepackage[scale=0.75]{geometry}

\makeatletter
\renewcommand*{\mobile}[1]{\renewcommand{\@mobile}{#1}}

\renewcommand*{\makecvtitle}{%
{\centering\namestyle{\@firstname\ \@lastname}\par}\medskip
\leavevmode{\addressfont\color{color2}\addresssymbol\@addressstreet
\hfill
\mobilesymbol\@mobile\\
\@addresscity
\hfill
\emailsymbol\@email\\
}}
\makeatother
\name{John}{Doe}

\address{street and number}{postcode city}{country}

\mobile{(555) 555-5555}
\email{[email protected]}

\begin{document}

\makecvtitle

\end{document}

简历示例

相关内容