Como definir o tamanho da fonte para \caption* (mas não para \caption)

Como definir o tamanho da fonte para \caption* (mas não para \caption)

Preciso alterar o tamanho da fonte para \caption*.No 10ptentanto, usar \captionsetupo \captiontamanho da fonte também muda. Como posso resolver isso?

Responder1

O exemplo mínimo a seguir altera a estrela \captiondetodosflutua para ser diferente daquele de \captionusaretoolboxremendar \caption@@@make:

insira a descrição da imagem aqui

\documentclass[12pt]{article}
\usepackage[paperheight=4in]{geometry}% http://ctan.org/pkg/geometry
\usepackage{caption}% http://ctan.org/pkg/caption
\usepackage{etoolbox}% http://ctan.org/pkg/etoolbox
\captionsetup{font=small}
\makeatletter
\patchcmd{\caption@@@make}% <cmd>
  {\ifcaption@star}% <search>
    {\ifcaption@star\footnotesize}% <replace>
    {}{}% <success><failure>
\makeatother
\begin{document}
\makeatletter
\begin{figure}\caption{A regular figure caption: \f@size{}pt}\end{figure}
\begin{figure}\caption*{A starred figure caption: \f@size{}pt}\end{figure}
\makeatother
\end{document}

\captionsetupdefine a fonte da legenda como \smalluma 12ptfonte base, que é equivalente a 10.95pt(para \caption). O patch transforma \caption*o tamanho da fonte em \footnotesize, que é equivalente a 10pt.

geometryfoi usado apenas neste exemplo para reduzir o tamanho do papel e pode não ser necessário em sua aplicação.

informação relacionada