减小字幕字体大小

减小字幕字体大小

我希望看到标题字体(以及标题标签)的尺寸比整个文档的尺寸小。

我已经尝试了 SE 的一些解决方案(图表标题的字体大小),例如:

\usepackage[font=small]{caption}

\usepackage{caption}
...
\captionsetup[figure]{font=small}

但就我的情况来说,它不起作用。

我认为这可能是由以下一种或两种情况造成的:

  1. 我正在使用外文文档类(因为我需要 14pt 文本大小);
  2. 我的代码中有以下几行(图形的中心标题):
\makeatletter
\long\def\@makecaption#1#2{%
  \vskip\abovecaptionskip
  \hbox to\textwidth{\hfill\parbox{1\textwidth}{\begin{center}#1: #2\end{center}}\hfill}
  \vskip\belowcaptionskip}
\makeatother

您能针对我的问题给我一些建议吗?此外,我如何手动导出标题字体大小(例如 12pt 或 13pt)?

更新。以下是我的问题的 MWE(我希望它实际上是“最小”的):

\documentclass[14pt,a4paper]{extarticle}

\usepackage{graphicx}
\graphicspath{ {pictures/} }

\makeatletter
\long\def\@makecaption#1#2{%
  \vskip\abovecaptionskip
  \hbox to\textwidth{\hfill\parbox{1\textwidth}{\begin{center}#1: #2\end{center}}\hfill}
  \vskip\belowcaptionskip}
\makeatother

\begin{document}

Picture:
\begin{figure}[ht]
   \includegraphics[width=0.5\linewidth]{levels.png}
    \caption{Here is a big picture. Caption are centered but it has the same font size as in whole document.}
\end{figure}

\end{document}

答案1

由于您已经重新定义了\@makecaption,您可以在那里设置大小(这很可能就是您发现包caption没有按预期工作的原因)。

我还想指出,您的定义可以稍微改进一下。嵌套的\hbox to\textwidth\parbox是多余的,您实际上可以去掉它们。您可能还不想使用环境,center因为它会在上方和下方增加一些垂直空间,因为它是使用 实现的trivlist

相反,我会这样做:

\makeatletter
\long\def\@makecaption#1#2{%
  \vskip\abovecaptionskip
  {
   \centering
   \small % or whatever your desired size is
   #1: #2
   \par % otherwise the centering will go away before it gets applied to the caption
  }
  \vskip\belowcaptionskip}
\makeatother

相关内容