进入双栏文章边缘的文本框

进入双栏文章边缘的文本框

我想将文章中的一些重要引文写到浮动(不可见)框中,突出它们,这些框一半位于(左/右)边距,一半位于相应的列中。我更喜欢一种可以自动运行的解决方案,独立于页面的右列或左列。

它看起来应该是这样的。

\fbox我认为这是使用和来完成的\minipage

答案1

尝试以下定义:

\usepackage[colaction]{multicol}

\newcommand\stickout[1]{%
  \docolaction{\begin{wrapfigure}[11]{l}[50pt]{.3\textwidth}\hspace{20pt}}%  first col
              {\ERROR}%                                                      middle
              {\begin{wrapfigure}[11]{r}[50pt]{.3\textwidth}\hspace{-20pt}}% last
  \begin{minipage}{140pt}
     \Large ``#1''\par
  \end{minipage}%
 \end{wrapfigure}}

然后只需使用\stickout{Lorem ipsum dolor...}并观察它神奇地移动到正确的位置(它需要至少 2 次运行)。

之后,您的示例经过适当简化,给出

在此处输入图片描述

您需要一个能够实现“colaction”的当前 multicol。当然,可以使定义更灵活,以便将一些固定值作为(可选)参数传递给命令……这是一个很好的用例,xparse但我今晚很累。

答案2

我找到了一个解决方案。需要手动编辑以适应引文的长度,并且需要更改左/右列,但它有效。

在此处输入图片描述

\documentclass[a4paper,oneside]{文章}
\usepackage[ascii]{输入框}
\usepackage[T1]{fontenc}
\usepackage[english]{babel}
\usepackage[left=3cm,bottom=2cm]{几何}
\usepackage{amssymb,amsfonts,textcomp}

\usepackage{多列}
\setlength{\columnsep}{1cm}

\寡妇惩罚10000
\clubpenalty10000

\usepackage{wrapfig}
\usepackage{lipsum}


\开始{文档}

\begin{多列}}{2}
\lipsum[1]

Lorem ipsum dolor sit amet,consectetur adipiscing elit。
Proin ac tempus dui。这不是马蒂斯的错。临时慈善家,
马萨阿卢克图斯
\begin{wrapfigure}[11]{l}[50pt]{.3\textwidth}
\hspace{20pt}
\开始{迷你页面}{140pt}
\Large{``Lorem ipsum dolor sit amet, consectetur adipiscing elit luctus sollicitudin, elit massa auctor velit, eu mattis
lacus arcu nec est.''}
\end{迷你页面}
\end{wrapfigure}
\lipsum[2]
\begin{wrapfigure}[11]{r}[50pt]{.3\textwidth}
\hspace{-20pt}
\开始{迷你页面}{140pt}
\Large{``Lorem ipsum dolor sit amet, consectetur adipiscing elit luctus sollicitudin, elit massa auctor velit, eu mattis
lacus arcu nec est.''}
\end{迷你页面}
\end{wrapfigure}
\lipsum[2]
\lipsum[2]

\end{多列}
\结束{文档}

它在分页符和分栏符处严重混乱。因此,引文应放在文本结束后。

相关内容