два столбца плавают на одной странице с использованием multicols

два столбца плавают на одной странице с использованием multicols

Я использую multicolпакет и не могу вписать figurefloat в ту же страницу. Мой MWE:

\documentclass{book}
\usepackage{graphics,lipsum,multicol}
\makeatletter
\setlength{\columnseprule}{1pt}
\newenvironment{Figure}
  {\begin{figure*}[b]\par\medskip\noindent\minipage{\textwidth}}
  {\endminipage\par\end{figure*}\medskip}
\makeatother
\begin{document}
\chapter{Chapter Title Here}
\begin{multicols}{2}
\lipsum[1-1]
\begin{Figure}
\centering
{\includegraphics{16627ans_171}}
\end{Figure}
and...

\end{multicols}
\end{document}

Я ожидаю результат, как показано ниже:

введите описание изображения здесь

решение1

\documentclass{book}
\usepackage[demo]{graphicx}
\usepackage{lipsum}
\usepackage{multicol}
\usepackage{caption}
\setlength{\columnseprule}{1pt}
%\makeatletter
%\newenvironment{Figure}
%  {\begin{figure*}[b]\par\medskip\noindent\minipage{\textwidth}}
%  {\endminipage\par\end{figure*}\medskip}
%\makeatother
\begin{document}
\chapter{Chapter Title Here}
\begin{multicols}{2}
\lipsum[1-1]
\end{multicols}%

\begin{center}
\includegraphics{16627ans_171}
%\captionof{figure}{Some Caption} % if needed
\end{center}
and... \lipsum
\end{document}

введите описание изображения здесь

решение2

Обычно при использовании multicolsвы не можете добавить float на ту же страницу. Просто не произойдет.

Однако есть небольшой обходной путь на странице, с которой вы начинаетеmulticols . Добавьте floatдоначиная с multicols. К уиту:

\documentclass{book}
\usepackage{graphics,lipsum,multicol}
\makeatletter
\setlength{\columnseprule}{1pt}
\newenvironment{Figure}
  {\begin{figure*}[b]\par\medskip\noindent\minipage{\textwidth}}
  {\endminipage\par\end{figure*}\medskip}
\makeatother
\begin{document}
\chapter{Chapter Title Here}
\begin{Figure}
\centering
{\includegraphics{16627ans_171}}
\end{Figure}
\begin{multicols}{2}
\lipsum[1-1]
and...

\end{multicols}
\end{document}

Поместит float в конец текущей страницы, поскольку он был создан вне multicols. Это не решение для общего случая, но оно работает в этом (довольно узком) случае.

Связанный контент