在我自己的课程中将几何设置为选项

在我自己的课程中将几何设置为选项

我正在编写一个类。我想用geometry包设置几何图形,但出现错误

! Package geometry Error: \paperwidth (0.0pt) too short.

我的课:

\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{probs}[2018/07/28]

\RequirePackage{geometry}

\DeclareOption{A5}{
    \geometry{
        paperheight =   8.27in,
        paperwidth  =   5.85in,
        top         =   0.5in,
        bottom      =   0.5in,
        outer       =   0.25in, 
        inner       =   0.25in,
        footskip    =   0.12in,
        headsep     =   0.12in,
        headheight  =   0.12in,
    }
}

\ExecuteOptions{A5}
\ProcessOptions

测试文件:

\documentclass[A5]{probs}


\begin{document}

Hello World!

\end{document}

答案1

我不确定样式,但关于错误信息,你可以使用\RequirePackage{geometry} 设置纸张的宽度和高度。

使用

\setlength{\paperheight}{8.27in}
\setlength{\paperwidth}{5.85in}
\RequirePackage{geometry}

有效。您可以设置任意高度和宽度,因为它随后会根据几何形状进行调整。完整 MWE:

%% probs.cls
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{probs}[2018/07/28]

\setlength{\paperheight}{8.27in}
\setlength{\paperwidth}{5.85in}
\RequirePackage{geometry}


\DeclareOption{A5}{
    \geometry{
        paperheight =   8.27in,
        paperwidth  =   5.85in,
        top         =   0.5in,
        bottom      =   0.5in,
        outer       =   0.25in, 
        inner       =   0.25in,
        footskip    =   0.12in,
        headsep     =   0.12in,
        headheight  =   0.12in,
    }
}

\renewcommand\normalsize{\fontsize{10pt}{12pt}\selectfont}

\ExecuteOptions{A5}
\ProcessOptions

%% doc.tex
\documentclass{probs}

\begin{document}

Hello World!

\end{document}

相关内容