![选项似乎被忽略](https://linux22.com/image/271890/%E9%80%89%E9%A1%B9%E4%BC%BC%E4%B9%8E%E8%A2%AB%E5%BF%BD%E7%95%A5.png)
我正在尝试为我的自定义类文件提供两个字体大小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}
这样,仅传递一个字体大小选项。