我有以下文件:
\documentclass{article}
\usepackage{subfig}
\usepackage{graphicx}
\usepackage{geometry}
\setcaptionwidth{12cm}
\begin{document}
\begin{figure}[t]
\centering%
\subfloat[]{\label{figa}\includegraphics[width=38mm,%
height=32.48mm]{fig1}}\hspace{3mm}%
\subfloat[]{\label{figb}\includegraphics[width=38mm,%
height=32.48mm]{fig2}}\hspace{3mm}%
\subfloat[]{\label{figc}\includegraphics[width=38mm,%
height=32.48mm]{fig3}}%
\caption{Some caption.}
\label{fig-moire-comp-xue}
\end{figure}
\end{document}
我希望所有图形的标题宽度为 12 厘米(略小于正文),并让 TeX 为我生成 (a)、(b) 标签。
结果如下:
如果我随后注释掉序言中将标题宽度设置为 12 厘米的行,它就会按照我想要的方式对齐:
(这是我的论文中的一个问题,是一份更为复杂的文档,但我认为我已经将其缩小到这个冲突。)我只希望对齐能够得到修复,但所有图形的标题仍然有 12 厘米宽。
我不太在意解决方案是否是一个丑陋的图形黑客,我只关心对齐。
谢谢你的帮助。
答案1
您可以全局设置标题的宽度并单独设置子标题的宽度:
\captionsetup{width=12cm}
\captionsetup[subfloat]{margin=0pt}
\setcaptionwidth
当然不要使用(它是caption
版本 2 的过时命令)。
答案2
在标题本身之前设置标题宽度:
\documentclass{article}
\usepackage{subfig}
\usepackage[demo]{graphicx}
\usepackage{geometry}
\begin{document}
\begin{figure}
\centering%
\subfloat[]{\label{figa}\includegraphics[width=38mm,%
height=32.48mm]{fig1}}\hspace{3mm}%
\subfloat[]{\label{figb}\includegraphics[width=38mm,%
height=32.48mm]{fig2}}\hspace{3mm}%
\subfloat[]{\label{figc}\includegraphics[width=38mm,%
height=32.48mm]{fig3}}%
\setcaptionwidth{12cm}
\caption{Some very long caption to show that is not
wider than 12 cm as defined by the setting.}
\label{fig-moire-comp-xue}
\end{figure}
\end{document}