页脚中的短垂直线 fancyhdr

页脚中的短垂直线 fancyhdr

我无法缩短页脚中的垂直线。我不希望线被拉到页面底部。相反,我希望它的高度只有页码的高度,或者稍微长一点,比如两倍,线也向下而不是向上。所以我可以定义长度或粉碎,我不知道,请帮忙。

使用几何包我可以减少页码,但这不是我想要的。

\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-scrpagefancyhdr

\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}

相关内容