多色和图形

多色和图形

我有一个两列文档(使用multicol),并希望插入不跨列的图形。我搜索了一番,唯一能找到的说是只figure*支持跨整个页面(两列)的 。有没有办法使用 s 在文档中获取单列图形multicol

答案1

\documentclass[a5paper]{article}
\usepackage{multicol,caption}
\usepackage[demo]{graphicx}
\usepackage{lipsum}
\newenvironment{Figure}
  {\par\medskip\noindent\minipage{\linewidth}}
  {\endminipage\par\medskip}
\begin{document}

\begin{multicols}{2}
\lipsum[1]
\begin{Figure}
 \centering
 \includegraphics[width=\linewidth]{foo}
 \captionof{figure}{my caption of the figure}
\end{Figure}

\lipsum[1]
\end{multicols}

\end{document}

在此处输入图片描述

无法在multicols环境内定义放置选项。

答案2

“解决这个问题的一个方法是不要让你的浮标漂浮。该float软件包提供了[H]浮点说明符来避免这种情况”(取自沃纳的答案在这里:https://tex.stackexchange.com/a/75939/182467

\usepackage{float}
[...]
\begin{figure}[H]
    [...]
\end{figure}

答案3

一个解决方案是使用nonfloat包。

\documentclass[]{article}

\usepackage{nonfloat}
\usepackage{multicol}

\usepackage[demo]{graphicx}
\usepackage{lipsum}

\newcommand\myfigure[1]{%
\medskip\noindent\begin{minipage}{\columnwidth}
\centering%
#1%
%figure,caption, and label go here
\end{minipage}\medskip}

\begin{document}
\begin{multicols}{3}
\lipsum[1]
%
\myfigure{\includegraphics[width=.9\columnwidth]{test}%
\figcaption{\emph{I am a figure caption!}}}
%
\lipsum[1]
\end{multicols}
\end{document}

示例输出

相关内容