修改 moderncv 标头

修改 moderncv 标头

moderncv是否可以使用 来更改课堂上照片和姓名的顺序\moderncvtheme[blue]{casual}

现在它看起来是这样的:

照片照片
照片照片
照片照片
照片照片
照片照片 名字 姓氏
__________________________________________________

但实际上我希望它看起来像这样:

                                        照片照片
                                        照片照片
                                        照片照片
                                        照片照片
名字 姓氏 照片照片
__________________________________________________

我怎样才能做到这一点?

答案1

您只需更改\maketitle命令:

% reverse the name and photo
\makeatletter
% maketitle
\renewcommand*{\maketitle}{%
  {%
    {\firstnamestyle{\@firstname}~\familynamestyle{\@familyname}}}%
    \hfill%
    \ifthenelse{\isundefined{\@photo}}%
      {}%
      {{\color{firstnamecolor}\framebox{\includegraphics[width=\@photowidth]{\@photo}}}\\[-.35em]}%
    {\color{firstnamecolor}\rule{\textwidth}{.25ex}\\[2.5em]}%
% optional quote
  \ifthenelse{\isundefined{\@quote}}%
    {}%
    {{\centering{}\begin{minipage}{\quotewidth}\centering\quotestyle{\@quote}\end{minipage}\\[2.5em]}}%
  \par}% to avoid weird spacing bug at the first section if no blank line is left after \maketitle
\makeatother

最难的部分是确定将这段代码放在哪里。该\maketitle命令不是在 中定义的moderncv.cls,而是在主题(包)文件中定义的,例如moderncvthemecasual.sty。此外, 的实现\moderncvtheme确保直到结尾序言。

因此,如果你想这样做一次,请将其放入你的 cv TeX 文件中,但它必须扩展之后\begin{document}和之前\maketitle。最好的做法是将上面的块放在\AtBeginDocument{...}序言中,在之后\moderncvtheme[blue]{casual}

如果您想多次执行此操作,您可以复制文件moderncvthemecasual.sty并添加包选项。如果这超出了您的专业知识,您可能需要向开发人员发送电子邮件,看看他们是否会考虑。

答案2

我不知道你是否真的需要做这么多麻烦。也许你只是想使用提供classic的主题moderncv。所以你可以尝试使用

\moderncv[blue]{classic}

代替

\moderncv[blue]{casual}

主题classic确实将照片放在了右边。我moderncv在以下网址总结了一些有关该包的信息:Moderncv LaTeX 包。创建现代简历的真正简单方法

相关内容