![页脚中的短垂直线 fancyhdr](https://linux22.com/image/369924/%E9%A1%B5%E8%84%9A%E4%B8%AD%E7%9A%84%E7%9F%AD%E5%9E%82%E7%9B%B4%E7%BA%BF%20fancyhdr.png)
我无法缩短页脚中的垂直线。我不希望线被拉到页面底部。相反,我希望它的高度只有页码的高度,或者稍微长一点,比如两倍,线也向下而不是向上。所以我可以定义长度或粉碎,我不知道,请帮忙。
使用几何包我可以减少页码,但这不是我想要的。
\documentclass[12pt, a4paper]{scrreprt}
\usepackage{xcolor}
\usepackage{fancyhdr}
\usepackage{lipsum}
%\usepackage[margin=1in]{geometry}
\fancyhf{}
\fancyfoot[R]{\vfootline\hskip\linepagesep\thepage}
\renewcommand\headrulewidth{0pt}
\newskip\linepagesep \linepagesep 5pt\relax
\def\vfootline{%
\begingroup\color{blue}\rule[-990pt]{1pt}{1000pt}\endgroup}
\pagestyle{fancy}
\begin{document}
\lipsum
\lipsum
\lipsum
\end{document}
答案1
您必须更改以下选项\rule
:
\documentclass[12pt, a4paper]{scrreprt}
\usepackage{lipsum}% only for dummy text
\usepackage{xcolor}
\usepackage{fancyhdr}
\pagestyle{fancy}
\renewcommand\headrulewidth{0pt}
\fancyhf{}
\fancyfoot[R]{\vfootline\hspace{\linepagesep}\thepage}
\newlength\linepagesep
\setlength{\linepagesep}{5pt}
\newcommand*\vfootline{\textcolor{blue}{\rule[-2pt]{1pt}{2\ht\strutbox}}}
\begin{document}
\lipsum
\lipsum
\lipsum
\end{document}
语法\rule
是
\rule[<vertical shift>]{<width of the rule>}{<height of the rule>}
如果规则应该下降,您可以使用例如。
\rule[-\ht\strutbox]{1pt}{2\ht\strutbox}
备注:您正在使用 KOMA-Script 类。因此建议改用scrlayer-scrpage
包fancyhdr
:
\documentclass[12pt, a4paper,twoside,footheight=23pt]{scrreprt}
\usepackage{blindtext}% only for dummy text
\usepackage{xcolor}
\usepackage{scrlayer-scrpage}% sets pagestyle scrheadings automatically
\clearpairofpagestyles
\rofoot*{\vfootline\hspace{\linepagesep}\pagemark}
\lefoot*{\pagemark\hspace{5pt}\vfootline}% for twosided document
\newlength\linepagesep
\setlength{\linepagesep}{5pt}
\newcommand*\vfootline{\textcolor{blue}{\rule[-2pt]{1pt}{2\ht\strutbox}}}
\begin{document}
\blinddocument
\end{document}
其他例子:
\documentclass[12pt, a4paper,footlines=2]{scrreprt}
\usepackage{lipsum}% only for dummy text
\usepackage{xcolor}
\definecolor{ultramarineblue}{rgb}{0.25, 0.4, 0.96}
\renewcommand\chaptermarkformat{\chaptername\ \thechapter\autodot\ \ }
\usepackage[automark,headsepline,markcase=upper]{scrlayer-scrpage}
\clearpairofpagestyles
\ohead{\leftmark}
\rofoot*{\vfootline\hspace{\linepagesep}\pagemark}
\lefoot*{\pagemark\hspace{5pt}\vfootline}% for twosided document
\addtokomafont{headsepline}{\color{ultramarineblue}}
\newlength\linepagesep
\setlength{\linepagesep}{5pt}
\newcommand*\vfootline{{\usekomafont{headsepline}\rule[-2pt]{1pt}{2\ht\strutbox}}}
\begin{document}
\chapter{CTitle}
\lipsum
\section{STitle}
\lipsum
\end{document}
注意\rofoot*
和中的星号\lefoot*
确保页面样式plain
将使用与页面样式相同的内容scrheadings
。默认情况下章节页面采用页面样式plain
。
答案2
为什么使用 fancyhdr 这么糟糕?我还有一些其他东西需要使用 fancyhdr。而且它工作得很好。顺便说一句,我是 Latex 的新手。
\documentclass[12pt, a4paper]{scrreprt}
\usepackage{lipsum}% only for dummy text
\usepackage{xcolor}
\usepackage{fancyhdr}
\definecolor{ultramarineblue}{rgb}{0.25, 0.4, 0.96}
\pagestyle{fancy} % Turn on the style
\fancyhf{}
\renewcommand{\headrule}{{\color{ultramarineblue}%
\hrule width\headwidth height\headrulewidth \vskip-\headrulewidth}}
\renewcommand{\headrulewidth}{0.4pt}
\fancyhead[R]{\textsl{\leftmark}}
\fancyfoot[R]{\vfootline\hspace{\linepagesep}\thepage}
\fancypagestyle{plain}{%
\fancyhf{} % clear all header and footer fields
\fancyfoot[R]{\vfootline\hspace{\linepagesep}\thepage}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}}
\newlength\linepagesep
\setlength{\linepagesep}{5pt}
\newcommand*\vfootline{\textcolor{blue}{\rule[-2pt]{1pt}{2\ht\strutbox}}}
\begin{document}
\chapter{CTitle}
\lipsum
\section{STitle}
\lipsum
\end{document}