`caption` 错误 (?) 其中图形中的 `\captionsetup[figure]` 没有效果

`caption` 错误 (?) 其中图形中的 `\captionsetup[figure]` 没有效果

caption我正在尝试使用float 环境(在本例中)内的包更改标题格式figure。但是,\captionsetup[figure]{}在 中不起作用,\begin{figure} ... \end{figure}这绝对是可能的,并在caption文档第 4 页,即:

\captionsetup 只对当前环境有影响,这一点很好。因此,如果您只想更改当前图形或表格的设置,只需将命令放在\captionsetup图形或表格内 \caption 命令之前即可。例如 \begin{figure}...\captionsetup{singlelinecheck=off} \caption{. . .} \end{figure}关闭单行检查,但仅适用于此图形,因此所有其他标题保持不变。

我不记得以前遇到过这个问题,有人能重现这个问题或提供如何修复以便\captionsetup使用本地的指导吗?我认为我正确地调用了命令,尽管我这边也可能出现一个简单的错误。

日志文件(带有\showfiles):

This is pdfTeX, Version 3.141592653-2.6-1.40.24 (TeX Live 2022) (preloaded format=pdflatex)
 restricted \write18 enabled.
entering extended mode
(./test.tex
LaTeX2e <2022-11-01> patch level 1
L3 programming layer <2023-02-22>
(c:/texlive/2022/texmf-dist/tex/latex/base/book.cls
Document Class: book 2022/07/02 v1.4n Standard LaTeX document class
(c:/texlive/2022/texmf-dist/tex/latex/base/bk10.clo))
(c:/texlive/2022/texmf-dist/tex/latex/caption/caption.sty
(c:/texlive/2022/texmf-dist/tex/latex/caption/caption3.sty
(c:/texlive/2022/texmf-dist/tex/latex/graphics/keyval.sty)))
(c:/texlive/2022/texmf-dist/tex/latex/caption/subcaption.sty)
(c:/texlive/2022/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def)
No file test.aux.

Caption Info: Option list on `figure'
Caption Data: {position=bottom,labelfont={Large,it}, labelsep=period} on input 
line 27.


Package caption Warning: Unused \captionsetup[figure] on input line 25.
See the caption package documentation for explanation.

[1{c:/texlive/2022/texmf-var/fonts/map/pdftex/updmap/pdftex.map}] (./test.aux)

 *File List*
    book.cls    2022/07/02 v1.4n Standard LaTeX document class
    bk10.clo    2022/07/02 v1.4n Standard LaTeX file (size option)
 caption.sty    2022/03/01 v3.6b Customizing captions (AR)
caption3.sty    2022/03/17 v2.3b caption3 kernel (AR)
  keyval.sty    2022/05/29 v1.15 key=value parser (DPC)
subcaption.sty    2022/01/07 v1.5 Sub-captions (AR)
l3backend-pdftex.def    2023-01-16 L3 backend support: PDF output (pdfTeX)
 ***********

 )<c:/texlive/2022/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx9.pfb><c:/texl
ive/2022/texmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb><c:/texlive/2022/t
exmf-dist/fonts/type1/public/amsfonts/cm/cmr9.pfb>
Output written on test.pdf (1 page, 30235 bytes).
Transcript written on test.log.

梅威瑟:

\documentclass[oneside]{book}

\usepackage{caption}
\usepackage{subcaption}

\captionsetup[figure]{position=bottom,labelfont={bf, small}, textfont={small}}

\begin{document}

\begin{figure}[t]
\caption{Bold and small}
\end{figure}

\begin{figure}[t]
\captionsetup[figure]{position=bottom,labelfont={Large,it}, labelsep=period}
\caption{Large and italic}
\showcaptionsetup{figure}
\end{figure}
\end{document}

目前的情况:

在此处输入图片描述

答案1

根据@Peter Wilson的评论,我联系了caption他们的维护者GitLab 上的问题跟踪器在这里我很感谢维护者如此迅速地做出回应:

通过 给出的选项\captionsetup[x]{...}将在环境开始时应用x(而不是在\caption环境 x 内的),因此\captionsetup[figure]{...}应用“太晚了”,因为\captionsetup[figure]{...}仅将给定的选项添加到“在图形环境开始时应用的选项列表”。 之所以以这种方式实现,是因为否则\captionsetup{...}图形内的内容不会覆盖\captionsetup[figure]{...}在序言中给出的选项,否则会使子标题选项的使用顺序更加复杂。

维护人员表示,他们将caption在新版本中更新文档,以更清楚地说明该文档\captionsetup["float"]{...}是在环境开始时应用的,不适合在“浮动”环境中使用。在阅读caption文档 pdf 后,我并没有意识到这一点,所以也许这会对在发布之前可能遇到相同问题的其他人有所帮助。

相关内容