如何让某个物体浮动到右边,即使它绕成了一条线?

如何让某个物体浮动到右边,即使它绕成了一条线?

我遇到这样一种情况:我在章节标题(有时是普通段落)中有一些数据需要:

  • 向右浮动
  • 不跨越界限

在大多数情况下,我能够使用 和 来实现这一点\hfill\mbox{}但如果 mbox 化的项目被发送到下一行,则 hfill 会留在上一行。以下是一些重复此问题的示例代码:

\documentclass[a6paper]{scrartcl}
    \usepackage{geometry}

\newcommand*\myref[1]{\hfill\mbox{\normalfont#1}}
\newcommand*\mysection[2]{\section*{#1\myref{#2}}}

\begin{document}

\mysection{Title One}{Ref Name NNN}

Lorem ipsum dolor sit amet, consectetuer adipiscing elit.

\mysection{Much Longer Title Two}{Ref Name NNN}

Ut purus elit, vestibulum ut, placerat ac, adipiscing vitae, felis.

\end{document}

这对我来说产生了类似的东西:

输出

我怎样才能让这样包裹的物品再次浮动呢?

或者,有没有更好的方法将内容放在那里?从语义上讲,它们不必一起出现。如果内容在部分标题之外,但浮动到任何可用的右侧自由空间(不超过前一个项目的顶部),那就太棒了。

答案1

如果在 处中断\hfill,它将在下一行的开头消失。通过\hspace{0.5em}我们引入一个可行的断点;\hspace*{\fill}如果在该处中断,则不会在行首消失。

\documentclass[a6paper]{scrartcl}
\usepackage{geometry}

\newcommand*\myref[1]{\hspace{.5em}\hspace*{\fill}\mbox{\normalfont#1}}
\newcommand*\mysection[2]{\section*{#1\myref{#2}}}

\begin{document}

\mysection{Title One}{Ref Name NNN}

Lorem ipsum dolor sit amet, consectetuer adipiscing elit.

\mysection{Much Longer Title Two}{Ref Name NNN}

Ut purus elit, vestibulum ut, placerat ac, adipiscing vitae, felis.

\end{document}

在此处输入图片描述

相关内容