Мой вопрос двойственныйВот этот. В паре вложенных multicols
сред я хочу, чтобы внутренняя имела правила разделения, т. е. «проверки» в следующем виде:
\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}