
Usando \newfloat
, novos ambientes flutuantes podem ser criados e como exemplificado emessepost, criei um novo float chamado, suppfig
mas quero adicionar subfiguras nele. Quando simplesmente adiciono subfiguras dentro dele, recebo a mensagem:
Nenhum contador
subsuppfig
definido.
Quando adiciono um contador chamado subsuppfig, \newcounter{subsuppfig}
recebo
Unidade de medida ilegal (pt inserido).
Como defino um novo ambiente subfloat?
Código:
\documentclass{article}
\usepackage{float,subcaption,graphicx}
\begin{document}
\newfloat{suppfig}{tbh}{supp}
\floatname{suppfig}{Supplementary Figure}
\begin{suppfig}[H]
\centering
\begin{subfigure}{\textwidth}
\centering
\caption{ }
\includegraphics[width=\textwidth]{example-image-a}
\end{subfigure}
\begin{subfigure}{\textwidth}
\centering
\caption{ }
\includegraphics[width=\textwidth]{example-image-b}
\end{subfigure}
\caption{...figurecaptions...}
\end{suppfig}
\end{document}
Responder1
Use package newfloat
, um pacote projetado para funcionar bem com caption
amigos.
\documentclass{article}
\usepackage{newfloat}
\usepackage{subcaption}
\DeclareFloatingEnvironment[name={Supplementary Figure}]{suppfigure}
\begin{document}
\begin{suppfigure}
\begin{subsuppfigure}{.45\textwidth}
\centering\rule{.9\linewidth}{2cm}
\caption{a small supplementary figure}
\end{subsuppfigure}\hfill%
\begin{subsuppfigure}{.45\textwidth}
\centering\rule{.9\linewidth}{2cm}
\caption{another small supplementary figure}
\end{subsuppfigure}
\caption{And a captin for all of them}
\end{suppfigure}
\end{document}
Responder2
subcaption
funciona bem (de forma automatizada) ao usarnewfloat
para criação de flutuadores. No entanto, se você estiver usandofloat
oufloatrow
, você terá que fazer o trabalho braçal sozinho.
O seguinte é retirado dosubcaption
documentação(seção5 O \DeclareCaptionSubType
comando):
Para utilizar o recurso de sublegenda do
caption
pacote alguns comandos e contadores devem ser preparados. Isto é feito com\DeclareCaptionSubType[<numbering scheme>]{<type>} \DeclareCaptionSubType*[<numbering scheme>]{<type>}
Para os ambientes
figure
&table
, e todos aqueles definidos com\DeclareFloatingEnvironment
oferecidos pelonewfloat
pacote, isso será feito automaticamente, mas para outros ambientes (por exemplo, aqueles definidos com\newfloat
oferecidos pelofloat
pacote ou\DeclareNewFloatType
oferecidos pelofloatrow
pacote) isso deverá ser feito manualmente.
\documentclass{article}
\usepackage{float,graphicx,subcaption}
\newfloat{suppfig}{tbh}{supp}
\floatname{suppfig}{Supplementary Figure}
\DeclareCaptionSubType{suppfig}
\renewcommand{\thesubsuppfig}{\Alph{subsuppfig}}
\begin{document}
\begin{suppfig}[H]
\centering
\begin{subfigure}{\textwidth}
\centering
\caption{First subcaption}
\includegraphics[width=.6\linewidth]{example-image-a}
\end{subfigure}
\begin{subfigure}{\textwidth}
\centering
\caption{Second subcaption}
\includegraphics[width=.6\linewidth]{example-image-b}
\end{subfigure}
\caption{Figure caption}
\end{suppfig}
\end{document}