我和这些人想要同样的东西:
但有一个小区别:我不喜欢手动输入 (a),而喜欢使用 \subcaption{}。为什么?因为如果以后以不同的方式排列图形,我可能会忘记相应地更改标签。
stackengine
现在我确实喜欢使用-command的想法\stackinset
。但是,它不接受\subcaption{}
作为参数。
所以我的最低限度不工作示例如下(不工作部分是\subcaption{}
其当前位置的命令):
\documentclass{article}
\usepackage{graphicx}
\usepackage{caption,subcaption}
\usepackage{stackengine}
\begin{document}
\begin{figure}
\begin{subfigure}{.96\textwidth}
\stackinset{l}{1in}{b}{1in}{\subcaption{}}{\includegraphics[width=5in]{example-image-a}}
\label{fig:test}
\end{subfigure}
\end{figure}
\end{document}
答案1
由于摆脱命令\caption
使用的跳过、规则和框并不容易,因此我将使用\phantomcaption
它(用于管理计数器和标签)并自行排版子标题,例如:
\documentclass{article}
\usepackage{graphicx}
\usepackage{caption,subcaption}
\usepackage{stackengine}
\begin{document}
\begin{figure}
\begin{subfigure}{.96\textwidth}
\phantomcaption
\stackinset{l}{1in}{b}{1in}{(\thesubfigure) Text}{\includegraphics[width=5in]{example-image-a}}
\label{fig:test}
\end{subfigure}
\end{figure}
\end{document}
或者如果您想接管字幕包所使用的基本格式选项:
\documentclass{article}
\usepackage{graphicx}
\usepackage{caption}
\usepackage[labelfont=bf,textfont=it,labelsep=endash]{subcaption} % ugly setting, just for demonstration
\usepackage{stackengine}
\makeatletter
\newcommand\makesimplesubcaption{\caption@@@make{\caption@fnum{sub\@captype}}}
\makeatother
\begin{document}
\begin{figure}
\begin{subfigure}{.96\textwidth}
\phantomcaption
\stackinset{l}{1in}{b}{1in}{\makesimplesubcaption{Text}}{\includegraphics[width=5in]{example-image-a}}
\label{fig:test}
\end{subfigure}
\end{figure}
\end{document}