我正在尝试在 amsart 文档的页脚区域添加一个徽标。我使用 fancyhdr 来实现这一点,但我遇到的问题是文本主体延伸到页脚区域 - 如下例所示:
\documentclass[a4paper,reqno,11pt]{amsart}
\usepackage{fancyhdr}
\usepackage[latin]{babel}
\usepackage{blindtext}
\pagestyle{fancy}
\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0.1pt}
\lfoot{\rule{0.4cm}{0.4cm}} %The logo would go here
\cfoot{Page \thepage}
\begin{document}
\title{Sample Doc}
\maketitle
\thispagestyle{fancy}
\blinddocument
\end{document}
有人遇到过类似的问题或知道快速解决方法吗?提前谢谢大家!
答案1
解决方法amsart
是相应增加\footskip
、减少默认值\textheight
,然后发出\calclayout
:
\documentclass[a4paper,reqno,11pt]{amsart}
\usepackage{fancyhdr}
\usepackage[latin]{babel}
\usepackage{blindtext}
\pagestyle{fancy}
\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0.1pt}
\lfoot{\rule{0.4cm}{0.4cm}} %The logo would go here
\cfoot{Page \thepage}
\advance\footskip0.4cm
\textheight=54pc %a4paper
%\textheight=50.5pc %letterpaper
\advance\textheight-0.4cm
\calclayout
\begin{document}
\title{Sample Doc}
\maketitle
\thispagestyle{fancy}
\blinddocument
\end{document}
该命令\calclayout
特定于 AMS 类。一个命令指定\textheight
包含页眉但不包含页脚的首字母,另一个命令指定、、\textwidth
和。然后 计算页边距的正确值,确保一些合理的最小值,然后设置为文本块的高度。查看代码,计算忽略页脚。默认情况下,不会对字体大小等进行任何调整。该类实际上是为使用默认选项而设计的。\headsep
\headheight
\paperwidth
\paperheight
\calclayout
\textheight
\headheight
10pt
\textheight
上述代码中给出的初始值amsart.cls
来自a4paper
和letterpaper
(该类接受的唯一纸质选项)。
答案2
您必须提供适当的footskip
。这可以通过以下包轻松完成geometry
:
\usepackage[a4paper,margin=1in,footskip=0.4in,heightrounded]{geometry}
我已添加了一些更有用的选项geometry
。
\documentclass[reqno,11pt]{amsart}
\usepackage{fancyhdr}
\usepackage[latin]{babel}
\usepackage{blindtext}
\usepackage[a4paper,margin=1in,footskip=0.4in,heightrounded]{geometry}
\pagestyle{fancy}
\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0.1pt}
\lfoot{\rule{0.4cm}{0.4cm}} %The logo would go here
\cfoot{Page \thepage}
\begin{document}
\title{Sample Doc}
\maketitle
\thispagestyle{fancy}
\blinddocument
\end{document}
适当调整值并注意其他数量headheight
,如headsep
等。有关详细信息,请参阅geometry
以下文档:texdoc.net。