放置 Vbox

放置 Vbox

我正在使用 LaTeX 编写文本。我希望我的测试为 2 列。我已经使用multicols环境完成了此操作。我的问题的文本及其选项不能被分页符或分栏符分隔。所以我使用将我的代码放入其中\vbox。现在我想自动对齐我的问题。每列中的可用空间必须在问题之间平等分配。那么我该如何实现这一点?

下面是我尝试过的一个例子:

\documentclass{article}
\usepackage{multicol}
\begin{document}
    \begin{multicols}{2}
        \noindent
        \vbox
        {
            Question content
        } \\
        \vbox
        {
            Question content
        } \\
        \vbox
        {
            Question content
        } \\
        \vbox
        {
            Question content
        } \\
        \vbox
        {
            Question content
        } \\
        \vbox
        {
            Question content
        }\\
    \end{multicols} 
\end{document}

正如您将在输出中看到的那样,\vboxs 之间的空格分布不均等,看起来很丑陋。注意:我指的是垂直轴。

答案1

\vboxes对于您想要实现的目标,即平衡列,的使用是不适当的。

\vboxesTeX 中的和\parboxes或 是\minipages具有不可破坏内容的容器。最好使用列表来格式化问题文本。

下面简单演示了这个问题。

\documentclass{article}
\usepackage{lipsum,xcolor,calc}
\usepackage{multicol}
\def\story#1#2{%
 \leavevmode
   \colorbox{#1}{\parbox{\columnwidth-\columnsep}{#2}}%
  }
\parindent0pt
\begin{document}
    \begin{multicols}{2}

        \story{orange!50}{\lipsum[1]}

        Question content

        \fbox{\story{black!20}{\lipsum[7]}}   

       Question content


       \story{orange!30}{\lipsum[8]}

       Question content

       Question content

    \end{multicols} 
\end{document}

在此处输入图片描述

由于框架框无法放在列的底部,LaTeX 会将其移到右列,然后当列平衡时,您就会得到您提到的丑陋布局。最好发布一个新问题,并附上您要实现的示例。

相关内容