我的问题是这个在一对嵌套multicols
环境中,我希望内部环境具有分离规则,即以下 mwe 中的“检查”:
\documentclass{article}
\usepackage{multicol}
\begin{document}
\begin{multicols}{2}
Test Test Test Test Test Test Test Test Test Test
\begin{multicols}{2}\setlength{\columnseprule}{0.4pt}
Check Check Check Check Check Check Check Check
\end{multicols}
Test Test Test Test Test Test Test Test Test Test
\end{multicols}
\end{document}
我尝试对上述柱子进行二元化,并删除外面的\setlength
,如上面的代码所示。但这样根本不会出现分隔标尺。
答案1
就像你之前提供链接的帖子一样,\setlength{\columnseprule}{0.4pt}
必须运行该指令前multicols
它应该影响的环境。
为了将范围限制\setlength{\columnseprule}{0.4pt}
在“内部”实例中,我建议通过和指令将该指令和内部multicols
环境放在单独的 TeX 组中。\begingroup
\endgroup
\documentclass{article}
\usepackage{multicol} % for 'multicols' environment
\begin{document}
\raggedright % just for this example
\begin{multicols}{2}
Test1 Test1 Test1 Test1 Test1 Test1 Test1 Test1 Test1 Test1
\begingroup
\setlength{\columnseprule}{0.4pt}
\begin{multicols}{2}
Checka Checka Checka Checka
Checkb Checkb Checkb Checkb
\end{multicols}
\endgroup
Test2 Test2 Test2 Test2 Test2 Test2 Test2 Test2 Test2 Test2 Test2 Test2 Test2 Test2
\end{multicols}
\end{document}
答案2
我会定义一个合适的环境。
\documentclass{article}
\usepackage{multicol}
\usepackage{lipsum}
\newenvironment{rmulticols}[2][0.4pt]{%
\setlength{\columnseprule}{#1}\begin{multicols}{#2}%
}{\end{multicols}}
\begin{document}
\begin{multicols}{2}
\lipsum[1][1-2]
\begin{rmulticols}{2}
\lipsum[2][1-4]
\end{rmulticols}
\lipsum[3]
\end{multicols}
Or the other way around
\begin{rmulticols}{2}
\lipsum[1][1-2]
\begin{rmulticols}[0pt]{2}
\lipsum[2][1-4]
\end{rmulticols}
\lipsum[3]
\end{rmulticols}
\end{document}