![包 keyval 错误:没有为 margin 指定值。——来自 geometry 的错误](https://linux22.com/image/234806/%E5%8C%85%20keyval%20%E9%94%99%E8%AF%AF%EF%BC%9A%E6%B2%A1%E6%9C%89%E4%B8%BA%20margin%20%E6%8C%87%E5%AE%9A%E5%80%BC%E3%80%82%E2%80%94%E2%80%94%E6%9D%A5%E8%87%AA%20geometry%20%E7%9A%84%E9%94%99%E8%AF%AF.png)
确切地说,我使用的是来自以下 URL 的简历模板:(res9b)。 http://rpi.edu/dept/arc/training/latex/resumes/
问题是简历模板不包含页眉。如果我简单地添加一个新页眉,对齐方式就不正确。页眉会覆盖页面的第一行。所以我需要一种方法来将页面对齐到页脚以下。我决定使用类似帖子中推荐的几何包。
\usepackage{geometry}
\def\name{First Last}
\geometry{
top=0.5in,
inner=0.5in,
outer=0.5in,
bottom=0.5in,
headheight=3ex,
headsep=2ex,
}
\pagestyle{myheadings}
\markright{\name}
\thispagestyle{empty}
....
但是当我编译它时,出现此错误:
! Package keyval Error: No value specified for margin.
See the keyval package documentation for explanation.
Type H <return> for immediate help.
...
l.848 \ProcessOptionsKV[c]{Gm}
%
看起来该问题与 res.cls 文件有关。
\documentclass[line,margin]{res}
这可能是导致该错误的原因吗?我该如何修复此错误?我喜欢此简历包的格式,如果可能的话,我想保留它。
答案1
全局margin
选项被传递给geometry
包(就像所有全局选项都传递给所有包一样)。并且geometry
需要此选项有一个参数。
要解决此问题,请尝试向包margin=<value>
中添加一个选项geometry
以覆盖全局选项,或者将margin
类的选项重命名为其他名称。
另一个选择是删除全局选项,即在 之后添加以下内容\documentclass
。该< >
部分标记了应填写的位置,而不是逐字逐句地执行。
\makeatletter
\def\@classoptionslist{<class options except `margin` OR empty>}
\makeatother
答案2
我刚刚尝试了另一种方法,效果很好!您可以下载新cls
文件这里
然后替换第一行:
\documentclass[line,margin]{res}
到:
\documentclass[line,mm]{res}
然后你就可以geometry
随意使用该包了。
由于问题是由于geometry
也将使用全局边距而引起的,因此我将中的边距选项重命名res.cls
为mm
。