我正在使用在 Stack Exchange 上找到的一个小宏来定义垂直居中的点填充,但我完全不理解它,我觉得这像是“黑客行为”。有没有其他方法可以编写这个宏,例如不使用和,\makeatletter
不\makeatother
使用?有没有其他方法可以实现类似的结果(即获得中线居中)?以下是显示效果的 MWE:@
{}
\dotfill
\RequirePackage[l2tabu,orthodox]{nag}
\documentclass[11pt,twoside,draft]{book}
\usepackage[T1]{fontenc}
\usepackage[nomath]{lmodern}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
\usepackage{microtype,textcomp}
\usepackage[total={6.25in,10in},left=1.25in,top=0.5in,includehead,includefoot]{geometry}
\makeatletter
\newcommand{\cdotfill}{\leavevmode\cleaders\hb@[email protected]{\hss$\cdot$\hss}\hfill\kern\z@}
\makeatother
\begin{document}
\mainmatter
\pagestyle{plain}
\chapter{A first chapter}
\section{A section title}
Blablabla blabla bla.
\dotfill
Blablabla blabla bla.
\cdotfill
Blablabla blabla bla.
\end{document}
预览: