我读到该subfigure
包已被弃用,取而代之的是该subcaption
包。然而,该subcaption
包有一个不幸的要求,即您提前指定每个子图的宽度。但是,对于创建一行相同高度的子图的常见情况,您事先并不知道它们的宽度,您只知道您希望它们全部都是 5 厘米高(例如)。
那么,什么是推荐的(而不是弃用的)包,用于制作子图条带,以便它们自动缩放到给定的高度?
注意:语法越简单越好(例如:我宁愿避免手动定义的小页面或自定义框,而是使用语法简单的包,就像subcaption
,,subfigure
等等......)
答案1
在提供内部内容时,无需指定框的宽度\subcaptionbox
:
\documentclass{article}
\usepackage{subcaption,graphicx}
\begin{document}
\begin{figure}
\centering
\subcaptionbox{abc}{\includegraphics[height=5\baselineskip]{example-image-a}} \quad
\subcaptionbox{def}{\includegraphics[height=5\baselineskip]{example-image-1x1}} \quad
\subcaptionbox{ghi}{\includegraphics[height=5\baselineskip]{example-image-b}} \quad
\end{figure}
\end{document}
最终的盒子宽度可以自然地适应内容。能如果需要,请指定宽度,因为\subcaptionbox
具有以下扩展用法/格式:
\subcaptionbox[<list entry>]{<heading>}[<width>][<inner-pos>]{<contents>}
<width>
注意用于指定框的可选宏。
答案2
\subfloat
来自的命令subfig
包也可以使用:
\documentclass{article}
\usepackage{subfig}
\usepackage{graphicx}
\begin{document}
\begin{figure}
\centering
\subfloat[abc]{\includegraphics[height=5\baselineskip]{example-image-a}}\quad
\subfloat[def]{\includegraphics[height=5\baselineskip]{example-image-1x1}}\quad
\subfloat[ghi]{\includegraphics[height=5\baselineskip]{example-image-b}}
\end{figure}
\end{document}