垂直间距无换行符

垂直间距无换行符

我是 LaTeX 新手,有一个奇怪的任务。我需要在另外两个之间写一行。想想这样:

foo boo doo(1)

              you soup pope(3)

doo boo foo(2)

但问题是,我不能在 (1) 和 (2) 之间添加新行。换句话说,(3) 必须位于两者之间。我该怎么做呢?

答案1

如果我正确理解了你的问题,那么你的答案是:raisebox在 中使用llap。工作示例:

\documentclass{minimal}

\begin{document}
\noindent foo boo doo(1)\llap{\raisebox{-2\baselineskip}[0pt][0pt]{doo boo foo(2)}}

\noindent you soup pope(3)

\noindent\phantom{doo boo foo(2)}

\noindent Lorem ipsum dolor sit amet, invitamus me missam ne velocitate renovasti dolorum.

\end{document}

最小工作示例

答案2

您可以使用minibox如下简单的环境:

\documentclass[border=2pt]{standalone}
\begin{document}
\begin{minipage}{0.3\linewidth}
foo boo doo(1)\\%[0.5cm]
doo boo foo(2)
\end{minipage}
\begin{minipage}{0.3\linewidth}
    you soup pope(3)
\end{minipage}
\end{document}

得出的结果是:

在此处输入图片描述

如果删除%注释字符,则会%[0.5cm]得到:

在此处输入图片描述


如果内容恰好在表格中,您可以调整解决方案表格:我可以将列移动行高一半吗?产生类似的结果:

\documentclass[border=2pt]{standalone}
\usepackage{collcell}

\newcommand*{\movedown}[1]{\smash{\raisebox{-1ex}{#1}}}%
\newcolumntype{M}{>{\collectcell\movedown}r<{\endcollectcell}}% (M for Middle)

\begin{document}
\begin{tabular}{@{}lM}
foo boo doo(1) & you soup pope(3)\\
doo boo foo(2)\\
\end{tabular}
\end{document}

只是@{}用于消除左边的列间距。

答案3

像这样吗?

\noindent
foo boo doo\\
doo boo foo\\
\raisebox{1.7\baselineskip}[0pt]{\hspace{8em}you soup pope}

在此处输入图片描述

相关内容