我创建了一个自己的类,将其用作book
基类。
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{manuscript}[2013/03/23 Creative writing manuscripts class]
\LoadClass[a4paper,12pt,oneside]{book}
问题是我希望能够选择纸张大小和book
类中的其他选项。唯一的方法是用book
相同的值重新定义类中已有的所有选项,并在加载基类时传递它?
另外,假设我想给我的课程添加一个语言选项,例如,如果我选择葡萄牙语,我想babel
用葡萄牙语加载。
我如何使用book
类中已定义的选项来更改该类的值,并使用我的新葡萄牙语选项来加载babel
该语言。
答案1
您可以使用
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{book}}
当使用 调用时将所有未使用的选项传递给您的基础课程书籍\LoadClass{book}
。
为了给你更好的建议,你应该添加 MWE 来了解你在课堂上所做的事情。
答案2
要传递选项,请使用
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{book}}
\ProcessOptions \relax
\LoadClass[12pt,a4paper,oneside]{book}
将新选项传递给另一个包(在本例中为 babel)
\DeclareOption{english}{\AtEndOfClass{\main@language{english}}}
\DeclareOption{portuguese}{\AtEndOfClass{\main@language{portuges}}}
\RequirePackage[portuges, english]{babel}