选项似乎被忽略

选项似乎被忽略

我正在尝试为我的自定义类文件提供两个字体大小11pt和选项12pt。我希望12pt将其设置为默认选项。我创建了如下选项:

\DeclareOption{11pt}{
    \PassOptionsToClass{11pt}{article}}

\DeclareOption{12pt}{
    \PassOptionsToClass{12pt}{article}}

\ExecuteOptions{12pt}
\ProcessOptions

\LoadClass[]{article}

这很好用,默认字体大小变为 12pt。但是,当我想违背此默认设置并使用 11pt 字体时,就会出现问题,当然,使用11pt如下选项:

\documentclass[11pt]

当它应该将字体大小更改为 11pt 时,它什么也不做(实际上是 10.95pt,因为这是类article用来替代 11pt 的字体,但这并不重要)。我怎样才能让11pt选项覆盖默认值12pt?我似乎想不通,这只是我的方法的问题吗?

有趣的是,如果我选择11pt默认选项,\ExecuteOptions{11pt}那么我可以使用\documentclass[12pt]和获取12pt字体,但反过来却不行。

答案1

\documentclass[12pt,11pt]{article}使用 12pt,11pt 选项无效。以下是解决方法

\ProvidesClass{akuritsu}
\DeclareOption{10pt}{\def\aku@ptsize{0}}
\DeclareOption{11pt}{\def\aku@ptsize{1}}
\DeclareOption{12pt}{\def\aku@ptsize{2}}

\ExecuteOptions{12pt}
\ProcessOptions
\PassOptionsToClass{1\aku@ptsize pt}{article}

\LoadClass{article}

这样,仅传递一个字体大小选项。

相关内容