如果 \hfill 后面的内容不够,则将其刷新到下一行

如果 \hfill 后面的内容不够,则将其刷新到下一行

我用它\hfill来将一些文本刷新到行尾。但是,当前面的内容\hfill占据了行的大部分空间时,行尾的文本就会被拆分到下一行。

我想要的是:当前面的内容\hfill没有在行尾为后面的文本留出足够的空间时\hfill,该文本应该在其整体冲洗到结尾下一行。

一位 MWE 表示:

\documentclass{article}
\begin{document}
\hrule % show the margins
\rule{28em}{.2ex} \hfill S o m e t h i n g
\end{document}

在此处输入图片描述

答案1

在此处输入图片描述

\documentclass{article}

\def\foo{\hspace{\fill}\mbox{}\linebreak[0]\hspace*{\fill}}
\begin{document}

\hrule % show the margins

\bigskip

\rule{32em}{.2ex}\foo \mbox{S o m e t h i n g}

\bigskip

\rule{28em}{.2ex}\foo \mbox{S o m e t h i n g}

\bigskip

\rule{21em}{.2ex}\foo \mbox{S o m e t h i n g}

\bigskip

\rule{12em}{.2ex}\foo \mbox{S o m e t h i n g}

\end{document}

相关内容