为什么“几何”包传递了一个不需要的参数?

为什么“几何”包传递了一个不需要的参数?

我正在开发一个类,但搞不清楚为什么 geometry 会传递给我的参数“twocolumn”,尽管我没有使用 \RequirePackageWithOptions,而只使用了 \RequirePackage。有人能向我解释如何避免这种奇怪的行为吗?

类文件

\ProvidesClass{toto}
\DeclareOption{twocolumn}{}
\ProcessOptions\relax
\LoadClass[a4paper]{article}
\RequirePackage{geometry}
\endinput

主 .tex 文件

\documentclass[twocolumn]{toto}
\usepackage{lipsum}
\begin{document}
\lipsum
\end{document}

答案1

全局选项传递给每个加载的包并且geometry有其自己的twocolumn选项。

如果你想取消它,那就做

\ProvidesClass{toto}
\DeclareOption{twocolumn}{}
\ProcessOptions\relax
\LoadClass[a4paper]{article}
\RequirePackage[twocolumn=false]{geometry}
\endinput

相关内容