如何在文档中更改 \captionsetup{} 后将其重置为默认值

如何在文档中更改 \captionsetup{} 后将其重置为默认值

我已经成功将文档的 \captionsetup{} 更改为以下代码中提供的不同格式。但是,我需要返回原始 \captionsetup{},但它不会清除之前的规范并返回默认设置。我需要帮助。下面是一个最小工作示例 (MWE),应该可以在 Overleaf 上运行,但实际上却不能。

\documentclass{article}
\usepackage[spanish]{babel}
\usepackage{caption}
\usepackage{fontspec}
\setmainfont{Arial}

\begin{document}

\begin{figure}
  \centering
  \caption{A default caption.}
  \label{fig:default}
\end{figure}

% Change the caption setup
\captionsetup{labelfont=bf, textfont=it}

\begin{figure}
  \centering
  \caption{A custom caption.}
  \label{fig:custom}
\end{figure}

% Clear the caption setup
\captionsetup{}

\begin{figure}
  \centering
  \caption{Back to default caption.}   % This caption stays the same as the previous one
  \label{fig:backToDefault}   
\end{figure}

\end{document}

我正在使用 XeLaTeX 来编译该项目,同时考虑到需要使用 Arial 作为主文本字体。

答案1

\captionsetup在组内使用{...}\begingroup ... \endgroup等)。这样它只会更改直到组末尾的标题:

% !TeX TS-program = lualatex


\documentclass{article}
\usepackage[spanish]{babel}
\usepackage{caption}
\usepackage{fontspec}
\setmainfont{Arial}

\begin{document}

\begin{figure}
  \centering
  \caption{A default caption.}
  \label{fig:default}
\end{figure}

\begingroup
% Change the caption setup
\captionsetup{labelfont=bf, textfont=it}

\begin{figure}
  \centering
  \caption{A custom caption.}
  \label{fig:custom}
\end{figure}
\endgroup

\begin{figure}
  \centering
  \caption{Back to default caption.}
  \label{fig:backToDefault}
\end{figure}

\end{document}

在此处输入图片描述

相关内容