当我使用该fancyhdr
包时,纸张边距被拉伸并且空白区域减少,如何在使用该fancyhdr
包时正确设置纸张边距?
这是代码,
\documentclass[a4paper, 14pt,oneside]{extreport}
\usepackage[top=2cm,bottom=2cm,left=3cm,right=2cm]{geometry}
\usepackage[T1]{fontenc}
\usepackage{microtype}
\usepackage{lipsum}
\usepackage{fancyhdr}
\parindent=2cm
\sloppy
\hyphenation{}
\hyphenpenalty=4000
\exhyphenpenalty=4000
\begin{document}
\pagenumbering{arabic}
\pagestyle{fancy}
%\rhead{\nouppercase{\textbf{\textsc{\textsf{\thepage}}}}}
\rhead{}
\lhead{\nouppercase{\textbf{\textsc{\textsf{\leftmark}}}}}
\renewcommand{\headrulewidth}{1pt}
\fancyfoot{}
\cfoot{\nouppercase{\textbf{\textsc{\textsf{\thepage}}}}}
\chapter{Bla bla}
\lipsum
\end{document}
答案1
使用 设置边距时geometry
,默认情况下不考虑页眉和页脚。您必须为此明确添加includehead
和选项。includefoot
这是您的代码的更好版本;请注意,无衬线粗体小型大写字母不适用于 Computer Modern 字体(我建议只使用一个强调层,即粗体或小型大写字母,而不是两者兼而有之)。
\documentclass[a4paper, 14pt,oneside]{extreport}
\usepackage[
top=2cm,
bottom=2cm,
left=3cm,
right=2cm,
headheight=17pt, % as per the warning by fancyhdr
includehead,includefoot,
heightrounded, % to avoid spurious underfull messages
]{geometry}
\usepackage[T1]{fontenc}
\usepackage{microtype}
\usepackage{fancyhdr}
\usepackage{lipsum}
\pagestyle{fancy}
\fancyhf{} % clear all fields
\renewcommand{\headrulewidth}{1pt}
%\fancyhead[R]{\bfseries\sffamily\thepage}
\fancyfoot[C]{\bfseries\sffamily\thepage}
\fancyhead[L]{\nouppercase{\bfseries\sffamily\leftmark}}
\fancypagestyle{plain}{% for the chapter start pages
\fancyhf{}% clear all fields
\renewcommand{\headrulewidth}{0pt}%
\fancyfoot[C]{\bfseries\sffamily\thepage}%
}
\begin{document}
\chapter{Bla bla}
\lipsum
\end{document}
不要发出\sloppy
。您的目标是避免段落格式问题,但这不是解决方案,因为它会导致非常糟糕的段落。