我的問題是雙重的這個。在一對嵌套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}
我嘗試將上面的帖子對偶化並刪除 external \setlength
,如上面的程式碼。但隨後根本沒有分離標尺出現。
答案1
正如您在之前提供連結的帖子中一樣,\setlength{\columnseprule}{0.4pt}
必須運行該指令前multicols
它應該影響的環境。
\setlength{\columnseprule}{0.4pt}
為了限制「內部」實例的範圍,我建議將此指令和內部multicols
環境放在單獨的 TeX 群組 via\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}