可以justification=centering
与结合使用吗format=hang
?在标准模式下,标题包将多行标题设置为justification=raggedright
。我希望所有标题都居中。但是,当我使用 时justification=centering
,每一行都单独居中,而不是将标题作为一个实体。请参阅我的 MWE。基本上,我希望标题保持原样但居中。感谢您的帮助。
\documentclass{scrreprt}
\usepackage[font=normalsize,format=hang]{caption}
\usepackage{tikz}
\begin{document}
\begin{figure}
\centering
\begin{tikzpicture}
\draw(3,0.5) circle [radius=3];
\end{tikzpicture}
\caption{A caption\\
\rule{.5\textwidth}{.1pt}\\
\scriptsize Dashed helplines apply to total sample.}
\label{fig:sex}
\end{figure}
\end{document}
答案1
您可以堆叠标题元素,而不是使用格式hang
。
\documentclass{scrreprt}
\usepackage[font=normalsize,justification=centering]{caption}
\usepackage[usestackEOL]{stackengine}
\usepackage{tikz}
\begin{document}
\begin{figure}
\centering
\begin{tikzpicture}
\draw(3,0.5) circle [radius=3];
\end{tikzpicture}
\caption[A caption]{\Longunderstack[l]{A caption\\
\rule{.35\textwidth}{.1pt}\\
\scriptsize Dashed helplines apply to total sample.}}
\label{fig:sex}
\end{figure}
\end{document}
答案2
\\
用空白填充行的其余部分。您的标题实际上是居中的,只是标题中有很多空白。如果您不想要全宽,您可以使用 来告诉 LaTeX \parbox
。
\documentclass{scrreprt}
\usepackage[font=normalsize,format=hang]{caption}
\usepackage{tikz}
\begin{document}
\newsavebox\foo
\begin{figure}
\centering
\begin{tikzpicture}
\draw(3,0.5) circle [radius=3];
\end{tikzpicture}
\caption{\parbox[t]{.5\textwidth}{A caption that may well be too long for one line, in which case line breaks are needed.
\vskip 1ex\hrule\vskip 1ex
\scriptsize Dashed helplines apply to total sample.
}}
\end{figure}
\end{document}