单行右对齐

单行右对齐

我有一些韵律文本,设置在quoting环境中,其中一些诗句的一半比一行长。标准verse环境会自动中断并缩进第二行。我对该解决方案不太满意,无论如何,我想使用该环境quoting的灵活性。我现在实际上想尝试以下操作:手动中断行,并将其后半部分右对齐。但我不太明白它是如何工作的,我认为我还不明白它是如何\raggedleft工作的,请参见以下示例:

\begin{document}
Some text here.
\begin{quoting}
Here some metrical text, longer than one line, and I want the 
{\raggedleft second line to be right aligned.\quad 1\par}
%The result of the two lines above looks about what 
%I want, but curiously "second" remains in the first line.
Here some metrical text, longer than one line, and I want the\\
{\raggedleft second line to be right aligned.\quad 1\par} 
and another line.
%And if I force a line break, the first line gets indented oddly.
\end{quoting}
\end{document}

示例输出

另一个选择可能是使用versegmverse,但这可能需要对我的文档进行更多更改,而我目前不想这样做。我只需要处理大约 10 行,因此手动处理并不是什么大事。我可能能够接受我示例中的第一个解决方案,但我有点害怕,因为我不明白 LaTeX 在那里做什么。

答案1

当你处理第一个例子时

Here some metrical text, longer than one line, and I want the 
{\raggedleft second line to be right aligned.\quad 1\par}

命令在生效\par时出现,因此整个段落将向左偏移。在第二种情况下,您告诉 TeX 在哪里中断第一行,但段落仍然向左偏移。\raggedleft

您可以按照以下方式操作:

\documentclass{article}
\usepackage{quoting}
\begin{document}
Some text here.
\begin{quoting}[indentfirst=true]
Here some metrical text, longer than one line, and I want the\\
\hspace*{\fill}second line to be right aligned.\quad 1

Here some metrical text, longer than one line, and I want the\\
\hspace*{\fill}second line to be right aligned.\quad 1
\end{quoting}
\end{document}

在此处输入图片描述

相关内容