我正在尝试更新我的简历(moderncv
),并且我自定义了一个框,里面有一些信息会显示出来。但是,现在在新电脑上编译时,这个框却没有显示出来。这个错误可能有点愚蠢,因为日志没有显示任何错误。有人知道我犯了什么错误吗?
\usepackage{etoolbox}
\makeatletter
\patchcmd{\makecvtitle}% <cmd>
{\usebox{\makecvtitlepicturebox}}% <search>
{\leavevmode\rlap{\smash{\small% Adjust font style/size
\begin{tabular}[t]{@{}p{\@photowidth}@{}}
\\ \rule{0pt}{1.5\normalbaselineskip}%
BirthDate:\\ *-*-* \\ Burgelijke staat: \\*% Your picture information here
\end{tabular}}}%
\usebox{\makecvtitlepicturebox}}% <replace>
{}{}% <success><failure>
\makeatother
编辑:我添加了 tracingpatches。日志可以在这里找到这里
关键部分是:
[debug] tracing \patchcmd on input line 65
[debug] analyzing '\makecvtitle'
[debug] ++ control sequence is defined
[debug] ++ control sequence is a macro
[debug] ++ macro can be retokenized cleanly
[debug] -- search pattern not found in replacement text
答案1
好吧,在旧版本中变量\makecvtitle
和\makecvtitlepicturebox
被使用。当前版本 2.2.0moderncv
使用\makecvhead
和\makecvheadpicturebox
代替。因为有一些重大更改,所以您需要完全重写修补代码。
通过以下代码(根据您的需要更改值),您可以看到我以新的方式添加了您想要的表格:
\usepackage{etoolbox}
\makeatletter
\patchcmd{\makecvhead}% <cmd> instead \makecvtitle
{\framebox{\includegraphics[width=\@photowidth]{\@photo}}}% <search>
{{\small% Adjust font style/size
\begin{tabular}[t]{@{}p{\@photowidth}p{2cm}@{}}
\framebox{\includegraphics[width=\@photowidth]{\@photo}} & \\
BirthDate: & *-*-* \\
Burgelijke staat: & * \\
\end{tabular}%
}%
}% <replace>
{}{}% <success><failure>
\makeatother
拥有完整的 MWE
\documentclass[11pt,a4paper,sans]{moderncv}
\moderncvstyle{casual} % head 2, body 1, foot 1
\moderncvcolor{blue}
\nopagenumbers{}
\usepackage[utf8]{inputenc}
\usepackage[scale=0.75]{geometry}
%\setlength{\hintscolumnwidth}{3cm}
%\setlength{\makecvtitlenamewidth}{10cm}
\setlength{\footskip}{70pt}
% personal data
\name{John}{Doe}
\title{Resumé title}
\address{street and number}{postcode city}{country}
\phone[mobile]{+1~(234)~567~890}
\phone[fixed]{+2~(345)~678~901}
\phone[fax]{+3~(456)~789~012}
\email{[email protected]}
\homepage{www.johndoe.com}
\social[linkedin]{john.doe}
\social[twitter]{jdoe}
\social[github]{jdoe}
\extrainfo{additional information}
\photo[64pt][0.4pt]{example-image-a}
\quote{Some quote}
% to show numerical labels in the bibliography (default is to show no labels)
\makeatletter\renewcommand*{\bibliographyitemlabel}{\@biblabel{\arabic{enumiv}}}\makeatother
% to redefine the bibliography heading string ("Publications")
%\renewcommand{\refname}{Articles}
\usepackage{etoolbox}
\makeatletter
\patchcmd{\makecvhead}% <cmd> instead \makecvtitle
{\framebox{\includegraphics[width=\@photowidth]{\@photo}}}% <search>
{{\small% Adjust font style/size
\begin{tabular}[t]{@{}p{\@photowidth}p{2cm}@{}}
\framebox{\includegraphics[width=\@photowidth]{\@photo}} & \\
BirthDate: & *-*-* \\
Burgelijke staat: & * \\
\end{tabular}%
}%
}% <replace>
{}{}% <success><failure>
\makeatother
\begin{document}
\makecvtitle
\section{Education}
\cventry{year--year}{Degree}{Institution}{City}{\textit{Grade}}{Description} % arguments 3 to 6 can be left empty
\cventry{year--year}{Degree}{Institution}{City}{\textit{Grade}}{Description}
\section{Master thesis}
\cvitem{title}{\emph{Title}}
\cvitem{supervisors}{Supervisors}
\cvitem{description}{Short thesis abstract}
\section{Experience}
\subsection{Vocational}
\cventry{year--year}{Job title}{Employer}{City}{}{General description no longer than 1--2 lines.\newline{}%
Detailed achievements:%
\begin{itemize}%
\item Achievement 1;
\item Achievement 2, with sub-achievements:
\begin{itemize}%
\item Sub-achievement (a);
\item Sub-achievement (b), with sub-sub-achievements (don't do this!);
\begin{itemize}
\item Sub-sub-achievement i;
\item Sub-sub-achievement ii;
\item Sub-sub-achievement iii;
\end{itemize}
\item Sub-achievement (c);
\end{itemize}
\item Achievement 3.
\end{itemize}}
\cventry{year--year}{Job title}{Employer}{City}{}{Description line 1\newline{}Description line 2}
\subsection{Miscellaneous}
\cventry{year--year}{Job title}{Employer}{City}{}{Description}
\section{Languages}
\cvitemwithcomment{Language 1}{Skill level}{Comment}
\cvitemwithcomment{Language 2}{Skill level}{Comment}
\cvitemwithcomment{Language 3}{Skill level}{Comment}
\section{Computer skills}
\cvdoubleitem{category 1}{XXX, YYY, ZZZ}{category 4}{XXX, YYY, ZZZ}
\cvdoubleitem{category 2}{XXX, YYY, ZZZ}{category 5}{XXX, YYY, ZZZ}
\cvdoubleitem{category 3}{XXX, YYY, ZZZ}{category 6}{XXX, YYY, ZZZ}
\section{Interests}
\cvitem{hobby 1}{Description}
\cvitem{hobby 2}{Description}
\cvitem{hobby 3}{Description}
%=======================================================================
% moderncv sets the \cventry as an unbreakable block - a tabular - to achieve the display alignment. Also, the seventh argument #7 of \cventry - your itemized list - is set inside a minipage which also doesn't allow for breaking across the page boundary.
%
%You can manually format separate items to allow for page breaking by setting them inside an empty \cvitem{}:
\cvitem{}{
\begin{itemize}
\item Worked on camera calibration and homography for the mapping of
objects onto a common coordinate system for object fusion and
analysis in world coordinates
\end{itemize}
}
%In order to allow for this to happen naturally would require a complete rewrite of that part (which is substantial).
% ======================================================================
\section{Extra 1}
\cvlistitem{Item 1}
\cvlistitem{Item 2}
\cvlistitem{Item 3. This item is particularly long and therefore normally spans over several lines. Did you notice the indentation when the line wraps?}
\section{Extra 2}
\cvlistdoubleitem{Item 1}{Item 4}
\cvlistdoubleitem{Item 2}{Item 5}%\cite{book1}}
\cvlistdoubleitem{Item 3}{Item 6. Like item 3 in the single column list before, this item is particularly long to wrap over several lines.}
\section{References}
\begin{cvcolumns}
\cvcolumn{Category 1}{\begin{itemize}\item Person 1\item Person 2\item Person 3\end{itemize}}
\cvcolumn{Category 2}{Amongst others:\begin{itemize}\item Person 1, and\item Person 2\end{itemize}(more upon request)}
\cvcolumn[0.5]{All the rest \& some more}{\textit{That} person, and \textbf{those} also (all available upon request).}
\end{cvcolumns}
\nocite{*}
\bibliographystyle{plain}
\bibliography{publications}
\clearpage
%----- letter ---------------------------------------------------------
% recipient data
\recipient{Company Recruitment team}{Company, Inc.\\123 somestreet\\some city}
\date{January 01, 1984}
\opening{Dear Sir or Madam,}
\closing{Yours faithfully,}
\enclosure[Attached]{curriculum vit\ae{}} % use an optional argument to use a string other than "Enclosure", or redefine \enclname
\makelettertitle
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis
ullamcorper neque sit amet lectus facilisis sed luctus nisl iaculis.
Vivamus at neque arcu, sed tempor quam. Curabitur pharetra tincidunt
tincidunt. Morbi volutpat feugiat mauris, quis tempor neque vehicula
volutpat. Duis tristique justo vel massa fermentum accumsan. Mauris
ante elit, feugiat vestibulum tempor eget, eleifend ac ipsum. Donec
scelerisque lobortis ipsum eu vestibulum. Pellentesque vel massa at
felis accumsan rhoncus.
Suspendisse commodo, massa eu congue tincidunt, elit mauris pellentesque
orci, cursus tempor odio nisl euismod augue. Aliquam adipiscing nibh ut
odio sodales et pulvinar tortor laoreet. Mauris a accumsan ligula. Class
aptent taciti sociosqu ad litora torquent per conubia nostra, per
inceptos himenaeos. Suspendisse vulputate sem vehicula ipsum varius nec
tempus dui dapibus. Phasellus et est urna, ut auctor erat. Sed tincidunt
odio id odio aliquam mattis. Donec sapien nulla, feugiat eget adipiscing
sit amet, lacinia ut dolor. Phasellus tincidunt, leo a fringilla
consectetur, felis diam aliquam urna, vitae aliquet lectus orci nec
velit. Vivamus dapibus varius blandit.
Duis sit amet magna ante, at sodales diam. Aenean consectetur porta
risus et sagittis. Ut interdum, enim varius pellentesque tincidunt,
magna libero sodales tortor, ut fermentum nunc metus a ante. Vivamus
odio leo, tincidunt eu luctus ut, sollicitudin sit amet metus. Nunc sed
orci lectus. Ut sodales magna sed velit volutpat sit amet pulvinar diam
venenatis.
Albert Einstein discovered that $e=mc^2$ in 1905.
\[ e=\lim_{n \to \infty} \left(1+\frac{1}{n}\right)^n \]
\makeletterclosing
\end{document}
您将获得以下编译的第一页: