为文档类创建静态标题

为文档类创建静态标题

我正在用 LaTeX 制作自己的文档类,但我遇到一个问题,即如何在使用我的类时自动显示该标题。

示例标题

我应该这样编码吗?

\AtBeginDocument{%
   \vspace*{-0.4in}\noindent
   {\Large\bfseries School name here} \\
   {\large\sffamily college name here} \\[0.2in]
   {\Large\sffamily department name here} \\[0.2in]
   {\Large\sffamily Subjectcode, subject name here} \\[0.2in]
   {\Large\sffamily school year here} \\[0.2in]
   \vspace{0.2in}
}

答案1

是的。差不多就是这样。

我浏览了您的个人资料,发现您可能有兴趣编写自己的类或包,这样每当您使用类或包时,您的标头都会自动加载。我知道您的问题出在哪里。可能是您想减少每次要参加考试或类似活动(可能是您的学校试卷模板或类似活动)时输入标头的时间。

您有多种选择可以执行此操作,我列出其中两种。

1. 将经常使用的代码放入单独的文件中复制粘贴如所须。

2. 创建包或类文件你已经得到了一些帮助,但我还想向你指出这个帖子风格/课程教程。还有相关问题将图片标题放在 \documentclass{letter} 中

使用选项 2 和我在此处发布的链接中的链接,我提出了自己的文档类,它自动化在我的班级考试和学校备忘录的第一页上包含学校标题,而其他页面上则不包含。对于您的具体问题,您可以拥有一个包含以下内容的班级文件。

  • 如果您希望页眉仅出现在第一页而不弄乱页眉,那么您可以执行以下操作:

    \ProvidesClass{myclass}[2012/09/03 version 0.01 My exam class]
    \NeedsTeXFormat{LaTeX2e}[1996/06/01]%
    \PassOptionsToClass{\CurrentOption}{article}
    \ProcessOptions \relax
    
    \LoadClass{article}
    \RequirePackage[margin=1in]{geometry}
    \AtBeginDocument{
    \begin{center}
    \sffamily
    {\Large\textbf{School Name}}        {\large\textbf{Name of College}}\\
    {\large Name of Department}\\
    {\large Subject code, subject name}\\
    {\large SY 2012-2013}
    \end{center}
    \noindent Name: \makebox[3in]{\hrulefill} \hfill Section: \makebox[2in]{\hrulefill}\\
    }
    \endinput
    
  • 如果您想使用顶部边距来节省一些空间,那么您可以执行以下操作:

    \ProvidesClass{myclass}[2012/09/03 version 0.01 My exam class]
    \NeedsTeXFormat{LaTeX2e}[1996/06/01]%               
    \PassOptionsToClass{\CurrentOption}{article}
    \ProcessOptions \relax
    
    \LoadClass{article}
    
    \RequirePackage[margin=1in]{geometry}
    \RequirePackage{fancyhdr}
    
    %% This sets the header of the first page of the letter
    \fancypagestyle{firstpage}{%
    \fancyhf{} % clear all six fields
    \renewcommand{\headrulewidth}{0pt}
    \renewcommand{\footrulewidth}{0pt}
    \fancyhead[C]{
    \parbox[t][]{4in}{
    \centering
    \sffamily
    {\Large\textbf{School Name}}\\
    {\large\textbf{Name of College}}\\
    {\large Name of Department}\\
    {\large Subject code, subject name}\\
    {\large SY 2012-2013}
    }}
    }
    \fancypagestyle{followingpage}{%
    \fancyhf{} % clear all six fields
    \renewcommand{\headrulewidth}{0pt}
    \renewcommand{\footrulewidth}{0pt}
    }
    \pagestyle{followingpage} % followingpage is the default page style
    \AtBeginDocument{\thispagestyle{firstpage} % the page style on the first page
    \geometry{headheight=1in,headsep=0.1in}
    \noindent Name: \makebox[3in]{\hrulefill} \hfill Section: \makebox[2in]{\hrulefill}\\
    }
    
    \endinput
    

更新:9 月 4 日。下面是用于测试我在此处发布的课程的 MWE。

\documentclass{myclass}

\usepackage{lipsum}

\begin{document}

\lipsum[1-20]

\end{document}

以下是我发布的第二个类的输出。您可以调整尺寸以满足您的需要,但想法就在那里。

在此处输入图片描述

相关内容