我需要制作一个两列文档(在横向格式的纸张上),但第二列出现在比第一列更低的位置。我在标题中写了“总是”,因为当我使用环境minipage
将页面分成两列时也会发生这种情况。这是一个例子,我该如何解决这个问题?谢谢。Luigi
这是输入文件:
\documentclass{article}
\usepackage[italian]{babel}
\usepackage[utf8]{inputenc}
\usepackage[a4paper,margin=2cm,landscape]{geometry}
\usepackage{lipsum,multicol}
\usepackage[colorlinks]{hyperref}
\usepackage{titlesec}
\titleformat{\section}[block]{\Large\bfseries\filcenter}{}{1em}{}
\title{Nuovi e vecchi fatti stilizzati}
\date{}
\begin{document}
\pagenumbering{gobble}
\maketitle
\begin{multicols}{2}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section*{Kaldor Facts 1961}
\begin{enumerate}
\item La produttività del lavoro è cresciuta a un tasso sostenuto
\item Il rapporto capitale/lavoro è cresciuto a un tasso sostenuto
\item Il tasso di profitto sul capitale è stato stabile nei paesi sviluppati
\item Il rapporto capitale/output è rimasto stabile
\item Le quote di profitto e salario sono state stabili
\item Vi sono state differenze dei tassi di crescita tra paesi nell'ordine del 2\%-5\%
\end{enumerate}
\columnbreak
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section*{New Kaldor Facts 2009 - Jones, Romer}
\begin{enumerate}
\item La produttività del lavoro è cresciuta a un tasso sostenuto
\item Il rapporto capitale/lavoro è cresciuto a un tasso sostenuto
\item Il tasso di profitto sul capitale è stato stabile nei paesi sviluppati
\item Il rapporto capitale/output è rimasto stabile
\item Le quote di profitto e salario sono state stabili
\item Vi sono state differenze dei tassi di crescita tra paesi nell'ordine del 2\%-5\%
\end{enumerate}
\end{multicols}
\end{document}
答案1
这里的问题与 LaTeX 无关,multicol
但实际上是 LaTeX 的一个普遍问题(并且在当前 LaTeX 模型中无法真正解决(LaTeX3 的 galley 模型对此有一个解决方案,但这并没有真正帮助它无法运行)。
问题如下:
枚举的结束生成:
- 惩罚项目(-51 好地方打破)
- 一些额外的空间
以下部分还在标题前添加了惩罚(-300)和一些空格。它试图变得聪明,并利用\addpenalty
它回顾,如果它看到一些空格,它将通过添加负数来取消该空格,然后添加惩罚,然后重新添加空格。结果我们得到了一个序列,如下所示
.......\penalty -51
.......\glue 10.0 plus 3.0 minus 5.0
.......\glue -10.0 plus -3.0 minus -5.0
.......\penalty -300
.......\glue 10.0 plus 3.0 minus 5.0
现在的问题是,这multicol
两项都会受到惩罚,显然最好在 -300 处中断。因此,第一列以那 2 个垂直空间结束。它们相互抵消,因此不会产生“真实”空间,但会导致此列没有深度,即,如果最后一行文本中包含一些字符(如“p”),则列底部不在最后一列的基线上,而是在下降线下方。
另一方面,右侧列的底部没有这样的额外空间,因此它具有深度,仅凭这一点就导致第二列看起来更大。
如果\columnbreak
使用,那么当它进入序列中间时,情况会变得更糟,这样我们得到
.......\penalty -51
.......\glue 10.0 plus 3.0 minus 5.0
.......\penalty -10005
并且枚举的完整空间仍然存在。有人可能会说这可能是一个错误,但\columnbreak
按照这里的工作方式\pagebreak
,直接添加惩罚即可。
这也解释了为什么使用
\end{enumerate}
\unskip
\columnbreak
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section*{...
无论有没有,都会\columnbreak
给我们正确的输出:它会删除枚举后的空格,这样就不会造成任何损害。
答案2
虽然我无法解释观察到的行为,但我有一个解决方法:\unskip
在之前添加\columnbreak
。
\documentclass{article}
\usepackage[italian]{babel}
\usepackage[utf8]{inputenc}
\usepackage[a4paper,margin=2cm,landscape]{geometry}
\usepackage{lipsum,multicol}
\usepackage[colorlinks]{hyperref}
\usepackage{titlesec}
\titleformat{\section}[block]{\Large\bfseries\filcenter}{}{1em}{}
\title{Nuovi e vecchi fatti stilizzati}
\date{}
\begin{document}
\pagenumbering{gobble}
\maketitle
\begin{multicols}{2}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section*{Kaldor Facts 1961}
\begin{enumerate}
\item La produttività del lavoro è cresciuta a un tasso sostenuto
\item Il rapporto capitale/lavoro è cresciuto a un tasso sostenuto
\item Il tasso di profitto sul capitale è stato stabile nei paesi sviluppati
\item Il rapporto capitale/output è rimasto stabile
\item Le quote di profitto e salario sono state stabili
\item Vi sono state differenze dei tassi di crescita tra paesi nell'ordine del 2\%-5\%
\end{enumerate}
\unskip\columnbreak
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section*{New Kaldor Facts 2009 - Jones, Romer}
\begin{enumerate}
\item La produttività del lavoro è cresciuta a un tasso sostenuto
\item Il rapporto capitale/lavoro è cresciuto a un tasso sostenuto
\item Il tasso di profitto sul capitale è stato stabile nei paesi sviluppati
\item Il rapporto capitale/output è rimasto stabile
\item Le quote di profitto e salario sono state stabili
\item Vi sono state differenze dei tassi di crescita tra paesi nell'ordine del 2\%-5\%
\end{enumerate}
\end{multicols}
\end{document}