包 keyval 错误:没有为 margin 指定值。——来自 geometry 的错误

包 keyval 错误:没有为 margin 指定值。——来自 geometry 的错误

确切地说,我使用的是来自以下 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.clsmm

相关内容