Создание статического заголовка для класса документа

Создание статического заголовка для класса документа

Я создаю свой собственный класс документа в 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
    

Обновление: 4 сентября.Ниже представлен MWE для тестирования классов, которые я здесь разместил.

\documentclass{myclass}

\usepackage{lipsum}

\begin{document}

\lipsum[1-20]

\end{document}

Ниже представлен вывод для второго класса, который я разместил. Вы можете изменить размеры в соответствии с вашими потребностями, но идея есть.

введите описание изображения здесь

Связанный контент