Wie kann man in einer verschachtelten Umgebung mit mehreren Spalten festlegen, dass nur die innerste Spalte ein Trennlineal hat?

Wie kann man in einer verschachtelten Umgebung mit mehreren Spalten festlegen, dass nur die innerste Spalte ein Trennlineal hat?

Meine Frage ist eine duale zuDieses hier. In einem Paar verschachtelter multicolsUmgebungen möchte ich, dass die innere Umgebung Trennungsregeln aufweist, also die „Prüfungen“ im folgenden 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}

Ich habe versucht, den obigen Beitrag zu verdoppeln und das Äußere zu entfernen \setlength, wie im obigen Code. Aber dann erscheint überhaupt kein Trennlineal.

Antwort1

Genau wie in dem früheren Beitrag, auf den Sie einen Link bereitgestellt haben, \setlength{\columnseprule}{0.4pt}muss die Anweisung ausgeführt werdenVordie multicolsUmgebung, auf die es sich auswirken soll.

Um den Umfang \setlength{\columnseprule}{0.4pt}auf die „innere“ Instanz zu beschränken, schlage ich vor, diese Anweisung und die innere Umgebung über und -Direktiven multicolsin einer separaten TeX-Gruppe zu platzieren .\begingroup\endgroup

Bildbeschreibung hier eingeben

\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}

Antwort2

Ich würde eine geeignete Umgebung definieren.

\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}

Bildbeschreibung hier eingeben

verwandte Informationen