为 \multicols 环境中的特定列自定义 \columnseprule

为 \multicols 环境中的特定列自定义 \columnseprule

我正在尝试制作一张海报,介绍我的论文的出发点。为此,我使用了一个\multicols由三列组成的环境。

问题是我想要一个特定的块跨越 2 列。我使用环境轻松实现了这一点minipage,但是\columnseprule传递了包含在我中的文本minipage,导致输出非常非常丑陋。

我尝试过用谷歌搜索,也在 stackexchange 上搜索过,但是我发现的唯一办法是修改所有的\columnseprules,而不仅仅是特定的一个,这也导致了相当丑陋的输出。

这是 MWE。您还需要a0posterwidetext文件才能进行编译。文章末尾提供了文件链接。

\documentclass[portrait,a0b,final]{a0poster}

\usepackage{times}
\usepackage{graphicx}
\usepackage[usenames]{xcolor}
\usepackage{multicol}
\usepackage{pstricks,pst-grad}
\usepackage{amsmath,amssymb}
\usepackage{amscd}
\usepackage{color}
\usepackage{multirow}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[francais]{babel}
\usepackage{tikz}
\usepackage{widetext}
\thispagestyle{empty}
\usepackage{lipsum}

%Columns spacing and separation
\setlength{\columnsep}{3cm}
\setlength{\columnseprule}{1mm}
\setlength{\parindent}{0.0cm}

%Poster environment
\newenvironment{poster}{
\begin{center}
\begin{minipage}[c]{0.90\textwidth}
}{
\end{minipage}
\end{center}
}

%Pbox
\newcommand{\pbox}[4]{
\psshadowbox[#3]{
\begin{minipage}[t][#2][t]{#1}
#4
\end{minipage}
}}

%Title box
\newrgbcolor{lblue}{0.8 0.92 0.95}
\newcommand{\titlebox}[1]{\begin{center}\pbox{0.6\columnwidth}{}{linewidth=2mm,framearc=0.1,linecolor=blue,fillstyle=gradient,gradangle=0,gradbegin=white,gradend=lblue,gradmidpoint=1.0,framesep=1em}{\begin{center}\LARGE #1\end{center}}\end{center}\vspace{1.5cm}}


\begin{document}
\begin{poster}

%%%%%%%%%%%%%%%%%%%%%
%%%    TITLE      %%%
%%%%%%%%%%%%%%%%%%%%%
\begin{center}
\titlebox{\textbf{\huge Some title}}

\vspace*{1cm}

\textsl{\LARGE Author1, Author2, Author3}

\vspace*{1cm}

\begin{minipage}[b]{0.3\textwidth}
    \large
    \center
    Location \\
    And \\
    Contact \\
\end{minipage}
\end{center}

\vspace*{3cm}

%%%%%%%%%%%%%%%%%%%%%
%%%    CONTENT    %%%
%%%%%%%%%%%%%%%%%%%%%
\begin{multicols}{3}

%COLUMN 1
\titlebox{Intro}

\lipsum[1]

\vspace*{2cm}

\titlebox{State of the art}

\lipsum[1-6]


\newpage


%BLOCK I WANT TO SPAN 2 COLUMNS
\begin{minipage}{2\columnwidth}

\titlebox{Problem we're gonna study}

\lipsum[1]

\end{minipage}


\vspace*{2cm}


%COLUMN 2
\titlebox{Existing solution (not good enough)}

\lipsum[1-7]


\newpage


%COLUMN 3
\vspace*{14cm}
\titlebox{Our solution (better than the previous one (we hope))}

\lipsum[1-6] 

\end{multicols}
\end{poster}

\end{document}

这是输出问题:

输出问题

我希望分隔线刚好从底部两个标题的水平开始。

任何解决方案都将不胜感激,只要我能保持我的\multicols环境(也许我要求很多?我不知道),否则我只会摆脱分离线,即使它看起来有点糟糕。

提前致谢。

widetext 的链接:https://svn.einsteintoolkit.org/documents/Paper_EinsteinToolkit_2010/widetext.sty

a0poster 链接:www.stats.ox.ac.uk/~marchini/software/a0.LaTeX.posters/a0poster/a0poster.sty

抱歉,我无法发布“真实”链接,但我的声誉不足以同时发布 2 个链接。

答案1

通过使用pspicture内部\SetBgContent绘制分隔线,我成功实现了我的愿望。也许这不是最好的解决方案,但它现在有效并且看起来不错。

相关内容