我正在使用moderncv
模板,在求职信页面上,我想编辑原始代码,以便姓名/手机/电子邮件出现在右上角,
但是构建过程返回错误: There's no line here to end. \makelettertitle
这是发生错误的位置,如果我将任何字符放在\recipient{}{}
一行中,\recipient{'}{}
错误就会解决,但字符会显示在结果中,这是我不想要的,我搜索了类似的情况,但给出的解决方案都没有帮助,如果我不想使用,有没有解决方案\recipient
?(我试过从代码中删除它,但没有用)代码:
\documentclass{moderncv}
\moderncvstyle{classic}
\moderncvcolor{blue}
\usepackage[scale=0.75]{geometry}
\firstname{John} % Your first name
\familyname{Smith} % Your last name
\title{Curriculum Vitae}
\mobile{(+1) 123 456 7890}
\email{[email protected]}
\begin{document}
\clearpage
\recipient{}{} % Letter recipient
\date{\today} % Letter date
\opening{Dear Sir, Madam,} % Opening greeting
\closing{Sincerely yours,} % Closing phrase
\enclosure[Attached]{curriculum vit\ae{}} % List of enclosed documents
\makelettertitle % Print letter title
I am an engineer
\makeletterclosing
\end{document}
类文件的内容为:
\newcommand{\recipient}[2]{\def\@recipientname{#1}\def\@recipientaddress{#2}}
\renewcommand*{\date}[1]{\def\@date{#1}}\date{\today}
\newcommand{\opening}[1]{\def\@opening{#1}}
\newcommand*{\closing}[1]{\def\@closing{#1}}
\newcommand*{\enclosure}[2][]{%
% if an optional argument is provided, use it to redefine \enclname
\ifthenelse{\equal{#1}{}}{}{\renewcommand*{\enclname}{#1}}%
\def\@enclosure{#2}}
答案1
该类加载辅助包moderncvheadi.sty
,其中有
\begin{minipage}[t]{.5\textwidth}
\raggedright%
\addressfont%
{\bfseries\upshape\@recipientname}\\%
\@recipientaddress%
\end{minipage}
这意味着如果\@recipientname
为空,则会得到一个单独的 的常见错误\\
,即There's no line to end
。
解决方案:
\recipient{\mbox{}}{}
就此而言,这将使该行不为空\\
。
答案2
通常,如果你写一封信,你需要一个收件人。如果你想留空,你必须将收件人标记为空。该字符~
标记一个不可破坏的空间,你可以用它来达到你的目的。
这样\recipient{~}{~}
您就可以摆脱错误信息no line to end
。