使用 [H] 时,图像在 Figure* 环境中消失

使用 [H] 时,图像在 Figure* 环境中消失

我使用的是标准 [twocolumn]{article} 类,但想插入一张横跨两列的图片。为此,我使用了 figure* 环境,但当我使用 [H] 选项时,我的图片消失了。

\documentclass[twocolumn]{article}
\usepackage{graphicx}
\usepackage{gensymb}
\usepackage{amssymb}
\usepackage{mhchem}
\usepackage{lipsum}

\usepackage{float}

%% Packages I've tried to use for work arounds
%%\usepackage{dblfloatfix}  % position images that span both columns
%%\usepackage{subcaption}
%%\usepackage{placeins}
%%\usepackage{afterpage}


\begin{document}

\title{Example Article}


%% main text
\section{Introduction}
\lipsum[1]

\newpage
\section{Results}
\lipsum[1]

\begin{figure*}[H]
    \centering
    \includegraphics[width=0.8\textwidth]{images/file_name}
    \caption{caption}~\label{fig:figure1}
\end{figure*}

\clearpage

\section{Conclusions}
\lipsum[3-4]

\end{document}

简介和结果段落都很短,所以我想将它们放在顶部,而图片则放在底部,横跨两列。有什么建议吗?

答案1

两列figure*仅与 兼容。使用[tp]有一个修复程序,但会将图放在下一页的底部。仍然与 不兼容。我能想到的最简单的方法是,如果列在示例中看起来有些像,则使用 自己放置它。我已经从包中使用它来获取标题。dblfloatfix.sty[b][h]minipage\captionofcaption

\documentclass[final,5p,times,twocolumn]{article}
\usepackage{graphicx}
\usepackage{gensymb}
\usepackage{amssymb}
\usepackage{mhchem}
\usepackage{lipsum}

\usepackage{float}
\usepackage{caption}%% To get \captionof

%% Packages I've tried to use for work arounds
%%\usepackage{dblfloatfix}  % position images that span both columns
%%\usepackage{subcaption}
%%\usepackage{placeins}
%%\usepackage{afterpage}

\begin{document}

\title{Example Article}
\maketitle

%% main text
\section{Introduction}
\lipsum[1]
See Figure~\ref{fig:figure1}.

\vfill
\noindent
\begin{minipage}{1.0\textwidth}
  \strut\newline
  \centering
  \includegraphics[width=0.8\textwidth,height=5cm]{example-image}
  \captionof{figure}{caption}\label{fig:figure1}
\end{minipage}

\newpage
\section{Results}
\lipsum[1]

% \begin{figure*}[tb]
%     \centering
%     \includegraphics[width=0.8\textwidth,height=5cm]{example-image}
%     \caption{caption}\label{fig:figure1}
% \end{figure*}

\clearpage
\section{Conclusions}
\lipsum[3-4]

\end{document}

在此处输入图片描述

答案2

你可以试试 stfloats将图形放置在当前页面上如果它在第一列中定义

\documentclass[twocolumn]{article}
\usepackage[showframe]{geometry}% 
\usepackage{lipsum}
\usepackage{graphicx}
\usepackage{stfloats}
\begin{document}
 \section{Introduction}
\lipsum[1]

\begin{figure*}[b]
  \includegraphics[width=\textwidth,height=4cm]{example-image}
  \caption{This is a example.}
\end{figure*}
\newpage
\section{Results}
\lipsum[1]


\lipsum[3-10]
\end{document}

在此处输入图片描述

答案3

要像选项一样放置跨越两列的图形或表格[H],您cuted也可以使用sttools捆绑包中的包和以下\captionof命令:

\documentclass[twocolumn]{article}
\usepackage[utf8]{inputenc} 
\usepackage[showframe]{geometry}%
\usepackage{lipsum}
\usepackage{graphicx, caption}
\usepackage{cuted}

\begin{document}

 \section{Introduction}
\lipsum[1]

\begin{strip}
\centering
  \includegraphics[width=\textwidth]{Gauguin.png}

  \captionof{figure}{D'où venons-nous ? Que sommes-nous ? Où allons-nous ?.}
\end{strip}
\newpage
\section{Results}
\lipsum[1]

\lipsum[3-10]

\end{document} 

在此处输入图片描述

相关内容