使用 LoadClassWithOptions 指定字体大小会导致错误

使用 LoadClassWithOptions 指定字体大小会导致错误

当我用 指定字体大小时LoadClassWithOptions,主文档出现错误:

未找到文件“.cls”。

自定义类文件与主文件位于同一文件夹中。我做错了什么?

我的类名.cls

\LoadClassWithOptions[12pt]{book} % --> gives error
%\LoadClassWithOptions{book} % --> compiles
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{myclass}[2019/06/03 custom class file]

测试.tex

\documentclass{myclass}

\begin{document}
Hi
\end{document}

编辑:

Tex 版本:TeX 3.14159265(TeX Live 2018)

操作系统:Ubuntu 18.10

答案1

如果你只是希望使用选项来加载book12pt,而用户没有指定,那么你可以直接写

\LoadClass[12pt]{book}

另一方面,如果你还想将用户提供的选项传递给你的类,那么方法是

\DeclareOption*{\PassOptionsToClass{\CurrentOption}{book}}
\ProcessOptions\relax
\LoadClass[12pt]{book}

因此myclass.cls

\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{myclass}[2019/06/03 custom class file]

\DeclareOption*{\PassOptionsToClass{\CurrentOption}{book}}
\ProcessOptions\relax
\LoadClass[12pt]{book}

test.tex

\documentclass[a4paper]{myclass}

\begin{document}
Hi
\end{document}

结果是book.cls同时加载a4paper选项和12pt选项。

\LoadClassWithOptions用于仅使用用户传递的选项加载类。它需要一个可选参数来指定类版本的最早日期。请参阅clsguide.pdf更多细节。

相关内容