相关问题
目的:
我开发了一个 din-a4 问卷,并希望将问题排版为两列布局。出于限制,我不希望测试项目内部出现分列符或分页符。此外,各列应通过规则分隔。
当前状态:
不幸的是,它\columnseprule
悬垂在类型区域的底部。
以下 MWE 说明了这一点(查看第一个输出页的底部):
平均能量损失
\documentclass{scrartcl}
\usepackage{tikz}
\usepackage{multicol}
\usepackage{adjustbox}
\usepackage{showframe}
\setlength\parindent{0pt}
\setlength\parskip{1.5ex}
\setlength\parsep{1.5\parskip}
\setlength\fboxsep{0pt}
\newcommand{\drawbox}[2][1] {
\adjustbox{
minipage=\linewidth,
padding=1ex #1 0ex #1,
center,
bgcolor=red!20,
cfbox=red
}{%
#2
}%
}
\begin{document}
\setlength\columnseprule{0.4pt}
\begin{multicols*}{2}
\foreach \i in {1,...,3} {
\drawbox[17em]{Item \i}\par
}
\end{multicols*}
\end{document}
输出:
问题
我怎样才能将其限制\columseprule
到类型区域?
答案1
Harrish 展示了使用不同软件包的解决方案,但就您的初始示例而言,只需使用最新版本的multicol
。我还没有尝试检查该问题何时得到修复,或者您使用的版本存在什么问题(可能是前几天到达 CTAN 的最新更新导致的),但如果您使用该版本(版本 1.8l),那么您会得到
答案2
您可以使用tcolorbox
代替,adjustbox
这样就不会有任何问题。
\documentclass{scrartcl}
\usepackage{multicol,lipsum,pgffor}
\usepackage{tcolorbox}
\usepackage{showframe}
\setlength\parindent{0pt}
\setlength\parskip{1.5ex}
\setlength\parsep{1.5\parskip}
\begin{document}
\setlength\columnseprule{0.4pt}
\begin{multicols*}{2}
\foreach \i in {1,...,10} {
\begin{tcolorbox}[colback=red!20,colframe=red,arc=0pt,outer arc=0pt]
\lipsum[\i]
\end{tcolorbox}
}
\end{multicols*}
\end{document}
有关如何调整盒子样式的详细信息请参阅tcolorbox
手册。