我有三个图,我想将它们并排放置。这样很好。但是,此外,每个图subfigure
都有自己的标题,而关键的是,我必须通过换行符为每个图生成两行。我使用 做到了这一点\newline
,但现在子标题总是从子图的左边缘开始,不再居中(这看起来不太好看)。
我该如何解决我的问题?
\documentclass{scrartcl}
\usepackage{graphix,subcaption}
\begin{document}
\begin{figure}[t]
\centering
\begin{subfigure}{0.31\textwidth}
\includegraphics[width=\textwidth]{image1}
\caption{\centering Nice image1.\newline Another line.}
\label{fig:NiceImage1}
\end{subfigure}
\begin{subfigure}{0.31\textwidth}
\includegraphics[width=\textwidth]{image1}
\caption{\centering Nice image 2.\newline Another line.}
\label{fig:NiceImage2}
\end{subfigure}
\begin{subfigure}{0.31\textwidth}
\includegraphics[width=\textwidth]{image1}
\caption{\centering Nice image 2.\newline Another line.}
\label{fig:NiceImage3}
\end{subfigure}
答案1
您可以justification=centering
使用\captionsetup
:
\documentclass{scrartcl}
\usepackage[demo]{graphicx}
\usepackage{subcaption}
\begin{document}
\begin{figure}
\captionsetup[subfigure]{justification=centering}
\centering
\begin{subfigure}{0.31\textwidth}
\includegraphics[width=\textwidth]{image1}
\caption{Nice image1. \\ Another line.}
\label{fig:NiceImage1}
\end{subfigure}
\begin{subfigure}{0.31\textwidth}
\includegraphics[width=\textwidth]{image1}
\caption{Nice image 2. \\ Another line.}
\label{fig:NiceImage2}
\end{subfigure}
\begin{subfigure}{0.31\textwidth}
\includegraphics[width=\textwidth]{image1}
\caption{Nice image 3. \\ Another line.}
\label{fig:NiceImage3}
\end{subfigure}
\end{figure}
\end{document}
选项demo
只是graphicx
用黑色矩形替换实际图形;不是在实际文档中使用该选项。