如何为所有类别制作页眉/页脚模板?

如何为所有类别制作页眉/页脚模板?

我想创建许多文档,这些文档都具有相同的(并且各自特定)页眉和页脚,无论它们属于哪个类(它们可能都是自定义类)。此外,将来创建文档将是通用的,这也是将代码外包会很好的原因。

目前,我专注于编写自定义.sty文件。这是正确的方法吗?还是我必须/应该在每个.cls文件中都包含它?或者还有其他方法可以解决这个问题?(教程页面或示例也会非常值得赞赏,例如,文档fancyhdr对我来说简直是恐怖。)

这就是它应该的样子

答案1

你完全正确。通常你只需写类似以下内容的内容:

\documentclass{...}
\usepackage{fancyhdr}
<header/footer setup>
...
\begin{document}
...
\end{document}

如果前言的某些部分(在这种情况下\usepackage{fancyhdr}<header/footer setup>)应该始终相同,那么您只需将其抽象为某个文件来输入,一个.sty文件 - 就像您已经成为目标一样。

但是,请记住,在包中建议您使用\RequirePackage而不是\usepackage。 您的包的整体外观可能是:

%%`dosyhf.sty'
%%
\NeedsTeXFormat{LaTeX2e}[2008/04/05]
\ProvidesPackage{dosyhf}
    [2017/09/12 v1.0 Custom headers and footers for every Dosy document]
\RequirePackage{fancyhdr}
<header/footer setup>
\endinput
%%
%% End of file `dosyhf.sty'.

您的文档将具有以下结构并输出相同的页眉和页脚(除非您在加载自定义包后再次手动更改它们)。

\documentclass{...}
\usepackage{dosyhf}
...
\begin{document}
...
\end{document}

最后的评论(至于@AlanMunn 的评论):在这样的抽象中,您实际上应该只加载所需的包。

有关该主题的更多阅读这里是一篇以更为普遍的方式处理该问题的文章。

相关内容