当我有以下课程时:
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{CustomClass}
\LoadClass[11pt]{article}
\DeclareOption{option1}{
\texttt{Text 1}
\clearpage
\texttt{Text 2}
\clearpage
}
\DeclareOption{option2}{
\texttt{Text 3}
\clearpage
\texttt{Text 4}
\clearpage
}
\AtBeginDocument{
\ProcessOptions
}
\endinput
我的使用方式如下:
\documentclass[option1]{CustomClass}
\begin{document}
\end{document}
没有生成 PDF。但是当我使用它时,ExecuteOptions{option1|option2}
它是静态的。所以我在指定文档类时指定的选项不起作用。
为什么会发生这种情况?
答案1
您需要\ProcessOptions
在类或包文件中运行,这样它才知道要处理哪些选项。
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{CustomClass}
\LoadClass[11pt]{article}
\DeclareOption{option1}{
\AtBeginDocument{%
\texttt{Text 1}%
\clearpage
\texttt{Text 2}%
\clearpage
}%
}
\DeclareOption{option2}{
\AtBeginDocument{%
\texttt{Text 3}%
\clearpage
\texttt{Text 4}%
\clearpage
}%
}
\ProcessOptions
\endinput