我想以表格形式在页面中显示多张图片(比如 7 张)。我使用以下代码,但没有任何结果。你能告诉我这有什么问题吗?
\begin{figure}[ht!]
\begin{center}
%
\subfigure[Caption of First Figure]{%
\label{fig:first}
\includegraphics[width=0.4\textwidth]{FirstFigure}
}%
\subfigure[Caption of Second Figure]{%
\label{fig:second}
\includegraphics[width=0.4\textwidth]{SecondFigure}
}\\ % ------- End of the first row ----------------------%
\subfigure[Caption of Third Figure]{%
\label{fig:third}
\includegraphics[width=0.4\textwidth]{ThirdFigure}
}%
\subfigure[Caption of Fourth Figure]{%
\label{fig:fourth}
\includegraphics[width=0.4\textwidth]{FourthFigure}
}%
%
\end{center}
\caption{%
The l-o-n-g caption for all the subfigures
(FirstFigure through FourthFigure) goes here.
}%
\label{fig:subfigures}
\end{figure}
答案1
正如本 MWE 所示,您的图形浮动没有任何问题,但在您的文档中,图形的高度可能较高,或者浮动太靠近页面末尾,或者太靠近另一个浮动。在这些情况下,LaTeX 无法找到适合选项的空间[ht!]
,因此浮动会移动到下一页甚至更多,可能移动到文档末尾,直到找到该空间。
一种解决方案是允许 LaTeX 决定更好的位置 ( [htbp]
),最好不要违反其规则 ( [htbp!]
),但我建议仅使用[tbp]
因为h
从美学角度来看,位置并不总是最好的。另一种解决方案可能是将浮动移到上面两三段(或更多)。如果 LaTeX 仍然无法以优雅的方式放置所有浮动,请考虑更改手稿的设计(减少浮动,在浮动之间添加更多文本,在浮动后添加更多文本……)。如果必须将图像放在“此处”,请尝试使用选项H
而不是h!
(此选项需要\usepackage{float}
在序言中)
\documentclass{article}
\usepackage{subfigure}
\usepackage{lipsum}
\usepackage[demo]{graphicx}
\usepackage[utf8]{inputenc}
\begin{document}
\lipsum[1]
\begin{figure}[ht!]
\begin{center}
%
\subfigure[Caption of First Figure]{%
\label{fig:first}
\includegraphics[width=0.4\textwidth]{FirstFigure}
}%
\subfigure[Caption of Second Figure]{%
\label{fig:second}
\includegraphics[width=0.4\textwidth]{SecondFigure}
}\\ % ------- End of the first row ----------------------%
\subfigure[Caption of Third Figure]{%
\label{fig:third}
\includegraphics[width=0.4\textwidth]{ThirdFigure}
}%
\subfigure[Caption of Fourth Figure]{%
\label{fig:fourth}
\includegraphics[width=0.4\textwidth]{FourthFigure}
}%
%
\end{center}
\caption{%
The l-o-n-g caption for all the subfigures
(FirstFigure through FourthFigure) goes here.
}%
\label{fig:subfigures}
\end{figure}
\lipsum[2-5]
\end{document}