如果剩余文本不适合,则无理由换行

如果剩余文本不适合,则无理由换行

我有一篇带有作者归属的文本(两端对齐的块段落)。

如果文本的最后一行有足够的空间来容纳作者署名和一些空间,那么应该将其放入该行的右侧。

如果文本的最后一行没有足够的空间,作者归属应该移到下一行并向右对齐,但段落的最后一行不应该对齐。

Foo bar foobar. Foo bar foobar. Foo bar foobar. Foo bar foobar. 
Foo bar foobar. Foo bar foobar. Foo bar foobar. Foo bar foobar. 
Foo bar foobar. Foo bar foobar. Foo bar foobar.   by the Author

Foo bar foobar. Foo bar foobar. Foo bar foobar. Foo bar foobar. 
Foo bar foobar. Foo bar foobar. Foo bar foobar. Foo bar foobar. 
Foo bar foobar. Foo bar foobar. Foo bar foobar.
                                              by another Author

我怎样才能实现这个目标?

答案1

\documentclass{minimal}

\def\signed#1{{\leavevmode\unskip\nobreak\hfil\penalty50\hskip2em
    \hbox{}\nobreak\hfil #1%
    \parfillskip=0pt \finalhyphendemerits=0 \endgraf}}

\begin{document}

Phasellus sagittis blandit tortor, vitae facilisis nisl molestie a. Proin
suscipit, purus in scelerisque bibendum, ligula magna hendrerit mauris, et
condimentum libero dui a tortor. ligula magna hendrerit mauris. \signed{A. Uthor}

\bigskip

Scelerisque bibendum, ligula magna hendrerit mauris, et
condimentum libero dui a tortor Phasellus. \signed{A. Uthor}

\end{document}

enter image description here

相关内容