두 열을 구분하는 수직 점선을 어떻게 그리나요?

두 열을 구분하는 수직 점선을 어떻게 그리나요?

multicol아니면 memoir바람직할 것입니다. \columnseprule, 나는 열 사이에 실선 수직선을 그리는 책임이 있음을 이해합니다. 다음을 달성하는 절약적인 방법이 있습니까?

-----pretext---
###### : ######
###### : ######
###### : ######
###### : ######
###### : ######
###### : ######
-----posttext--

답변1

여기에 해결책이 있습니다

\documentclass[twocolumn]{memoir}

\usepackage{xpatch}
\usepackage{graphicx}

\makeatletter
\xpatchcmd{\@outputdblcol}{\vrule\@width\columnseprule}{\rotatebox{90}{\parbox{\textheight}{\dotfill}}}{}{}
\makeatother

\usepackage{lipsum}



\begin{document}
\lipsum
\end{document}

여기에 이미지 설명을 입력하세요

답변2

multicol이것은 요청한 대로 패키지를 사용하는 예비 버전입니다 .

\documentclass{memoir}
\usepackage{multicol}
\usepackage{etoolbox}
\usepackage{tikz}
\usetikzlibrary{tikzmark}
\usepackage{lipsum}
%
\newcounter{mymulticol}
\setlength\columnsep{20pt}
%
\makeatletter
\def\LR@dotcolumn@boxes{%
     \process@cols\mult@gfirstbox{%
       \ifdim\dp\count@>\dimen\tw@
         \global\dimen\tw@\dp\count@ \fi
       \mc@col@status@write
       \box\count@\hss{\columnseprulecolor\tikzmark{middle-\themymulticol}\vrule
              \@width\columnseprule}\hss}%
     \ifdim\dp\mult@rightbox>\dimen\tw@
       \global\dimen\tw@\dp\mult@rightbox \fi
     \mc@lastcol@status@write
     \box\mult@rightbox\stepcounter{mymulticol}\tikzmark{end-\themymulticol}%
}
\newcommand\LRdotmulticolcolumns
    {\let\mc@align@columns
      \LR@dotcolumn@boxes}
\LRdotmulticolcolumns
\AtBeginEnvironment{multicols}{\stepcounter{mymulticol}\tikzmark{start-\themymulticol}}     

\AtEndEnvironment{multicols}{%
\raisebox{0pt}[0pt][0pt]{\tikz[remember picture,overlay]{
  \draw[dotted] 
    ([yshift=-17pt]{{pic cs:middle-\themymulticol}|-{pic cs:start-\themymulticol}}) --
    ([yshift=-2pt]{{pic cs:middle-\themymulticol}|-{pic cs:end-\themymulticol}});
}}}
\makeatother

\begin{document}

\lipsum[4]
\begin{multicols}{2}
\lipsum[4]
\end{multicols}
\lipsum[4]
\begin{multicols}{2}
\lipsum[4]
\end{multicols}
\lipsum[4]

\end{document}

결과:

여기에 이미지 설명을 입력하세요

점선이 최종 위치에 도달하려면 코드를 두 번 실행해야 합니다.

결과:

관련 정보