我有以下问题:
使用该subfig
包我以 2x2 的布局显示 4 张图像。
\documentclass{article}
\usepackage{subfig,caption}
\usepackage{graphicx}
\begin{document}
\begin{figure}
\centering
\subfloat{\includegraphics[width=0.31\textwidth]{img.png}}
\hspace{1em}
\subfloat{\includegraphics[width=0.31\textwidth]{img.png}}\\
\subfloat[Column 1]{\includegraphics[width=0.31\textwidth]{img.png}}
\hspace{1em}
\subfloat[Column 2]{\includegraphics[width=0.31\textwidth]{img.png}}
\end{figure}
\end{document}
结果是标签以 (c) 和 (d) 开头,位于第 3 和第 4 张图片下方。我希望标签为 (a) 和 (b)。不知何故,我需要重置 subfloat 标题的计数器。
答案1
这样能达到你想要的效果吗?
\documentclass{article}
\usepackage{subcaption}
\usepackage[draft]{graphicx}
\begin{document}
\begin{figure}
\centering
\begin{subfigure}[t]{0.31\textwidth}
\includegraphics[height=\textwidth,width=\textwidth]{img.png}
\includegraphics[height=\textwidth,width=\textwidth]{img.png}
\caption{Column1}
\end{subfigure}
\hspace{1em}
\begin{subfigure}[t]{0.31\textwidth}
\includegraphics[height=\textwidth,width=\textwidth]{img.png}
\includegraphics[height=\textwidth,width=\textwidth]{img.png}
\caption{Column2}
\end{subfigure}
\end{figure}
\end{document}
(我height=\textwidth
仅用它来避免错误消息,因为img.png
不存在)
我从某处读到说 subfig 已被弃用并且不应再使用。
答案2
该subfig
软件包已弃用,建议您不再使用它,而改用subcaption
。这是我的想法:
\documentclass{article}
\usepackage[demo]{graphicx}
\usepackage{subcaption}
\begin{document}
\begin{figure}
\centering
\begin{subfigure}[b]{0.3\textwidth}
\centering
\includegraphics[width=\textwidth]{dummy}
% \caption*{Column 1a}
\label{fig:1}
\end{subfigure}%
~
\begin{subfigure}[b]{0.3\textwidth}
\centering
\includegraphics[width=\textwidth]{dummy}
% \caption*{Column 2a}
\label{fig:2}
\end{subfigure}%
\\ % Change row.
\begin{subfigure}[b]{0.3\textwidth}
\centering
\includegraphics[width=\textwidth]{dummy}
\caption{Column 1b}
\label{fig:3}
\end{subfigure}%
~
\begin{subfigure}[b]{0.3\textwidth}
\centering
\includegraphics[width=\textwidth]{dummy}
\caption{Column 2b}
\label{fig:4}
\end{subfigure}%
\caption{The overall caption.}
\label{fig:all}
\end{figure}%
\end{document}
如果您想要标题但不想要第一行的字母,您可以取消注释\caption*
。
答案3
这基本上就是我想要的:
\documentclass{article}
\usepackage{subfig}
\makeatletter
\newcommand{\clearsubcaptcounter}{\setcounter{sub\@captype}{0}}
\makeatother
\begin{document}
\begin{figure}
\centering
\subfloat{\rule{4cm}{4cm}}
\hspace{1em}
\subfloat{\rule{4cm}{4cm}}\\
\clearsubcaptcounter
\subfloat[Column 1]{\rule{4cm}{4cm}}
\hspace{1em}
\subfloat[Column 2]{\rule{4cm}{4cm}}
\end{figure}
\end{document}
但是,我不知道这是否是最干净的解决方案,因为它使用了 \makeatletter...