我不明白为什么标题中有多余的字间距。可能是因为子图?谢谢您的帮助。
\begin{figure}[H]
\centering
\begin{subfigure}[h]{.45\textwidth}
\centering
\includegraphics[width=\textwidth]{beest}
\caption{ Strandbeest Janson, Theo; hacknmod.com/wp-content/uploads/2013/07/theo-jansen-strandbeest.jpg}
\label{beest}
\end{subfigure}
\hfill
\begin{subfigure}[h]{.45\textwidth}
\centering
\includegraphics[width=\textwidth]{umbrella}
\caption{Sample umbrella mechanism; wiki.ece.cmu.edu/ddl/images/thumb/Umbrella-wikiFrontpage.jpg/500px-Umbrella-wikiFrontpage.jpg}
\label{umbrella}
\end{subfigure}
\caption{}
\label{}
\end{figure}
答案1
您需要将标题材料的对齐方式从 justified 改为 raggedright。由于您已经加载了该subcaption
包,因此只需发出指令
\captionsetup[subfigure]{justification=raggedright}
如果希望此指令应用于整个文档,请将此指令放在序言中;\begin{figure}
如果它仅适用于手头的两个子图,请将此指令放在后面。
另外,我建议您也加载该url
包(使用选项hyphens
)并将 URL 字符串包含在\url
指令中的标题中。这样做将允许 LaTeX 在长 URL 字符串中找到其他换行符的可能性。
小问题:所有三条\centering
指令都可以省略,因为它们适用于占据各自可用宽度的实体
\documentclass{article}
\usepackage[demo]{graphicx} % omit 'demo' version in real document
\usepackage{subcaption}
\usepackage[hyphens]{url}
\begin{document}
\begin{figure}
\captionsetup[subfigure]{justification=raggedright}
\urlstyle{same}
%%%\centering
\begin{subfigure}[t]{.45\textwidth}
%%%\centering
\includegraphics[width=\linewidth]{beest}
\caption{ Strandbeest Janson, Theo; \url{hacknmod.com/wp-content/uploads/2013/07/theo-jansen-strandbeest.jpg}}
\label{beest}
\end{subfigure}
\hfill
\begin{subfigure}[t]{.45\textwidth}
%%%\centering
\includegraphics[width=\linewidth]{umbrella}
\caption{Sample umbrella mechanism; \url{wiki.ece.cmu.edu/ddl/images/thumb/Umbrella-wikiFrontpage.jpg/500px-Umbrella-wikiFrontpage.jpg}}
\label{umbrella}
\end{subfigure}
\caption{}
\label{}
\end{figure}
\end{document}