我想使用\autoref{fig:subfig:a}
,但无法通过简单输入此代码来获取图形编号。我的代码是:
\documentclass{article}
\usepackage{amssymb,amstext,amsmath,latexsym,mathtools}
\usepackage{pdfpages}
\usepackage{graphicx}
\usepackage{caption}
\usepackage{subcaption}
\usepackage{float}
\usepackage{hyperref}
\begin{document}
\section{Aya}
\autoref{fig:ABC:a}
\begin{figure}[H]
\centering
\subfloat[this is ...]{
\label{fig:ABC:a}
\includegraphics[width=0.45\linewidth]{ABC1.pdf}}
\hspace{0}
\subfloat[this is ...]{
\label{fig:ABC:b}
\includegraphics[width=0.45\linewidth]{ABC2.pdf}}\\[20pt]
\subfloat[...]{
\label{fig:ABC:c}
\includegraphics[width=0.45\linewidth]{ABC3.pdf}}
\hspace{0}
\subfloat[...]{
\label{fig:ABC:d}
\includegraphics[width=0.45\linewidth]{ABC4.pdf}}
\caption{abcd}
\label{fig:ABC} %% label for entire figure
\end{figure}
\end{document}
我应该添加什么才能正确显示图形的数字?
答案1
caption
这是一个只需要和包提供的功能的解决方案。请注意在环境中subcaption
重复使用环境。要将标题放在subfigure
figure
以下图形,只需将子图的\caption
命令移至语句下方即可\includegraphics
。
\documentclass{article}
\usepackage[demo]{graphicx}
\usepackage[font=small,labelfont=bf]{caption}
\usepackage{subcaption}
\usepackage{hyperref}
\begin{document}
\begin{figure}
\begin{subfigure}{0.48\textwidth}
\centering
\caption{First subfigure} \label{fig:ABC:a}
\includegraphics[width=\linewidth]{fig1.pdf}
\end{subfigure}
\hspace*{\fill}
\begin{subfigure}{0.48\textwidth}
\centering
\caption{Second subfigure}\label{fig:ABC:b}
\includegraphics[width=\linewidth]{fig2.pdf}
\end{subfigure}
\caption{Overall caption}
\label{fig:ABC}
\end{figure}
Here's a cross-reference to \autoref{fig:ABC}, and here's one to \autoref{fig:ABC:b}.
\end{document}