还有其他方法可以编写此宏(居中点填充)吗?

还有其他方法可以编写此宏(居中点填充)吗?

我正在使用在 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}

预览:

在此处输入图片描述

相关内容