acmsmall y subfiguras

acmsmall y subfiguras

Estoy intentando poner una figura con subfiguras, usando la acmsmallclase. Al compilar me sale el siguiente error:

Package caption Warning: Unsupported document class (or package) detected, (caption)
usage of the caption package is not recommended. See the caption package documentation for explanation.

) (/usr/local/texlive/2012/texmf-dist/tex/latex/caption/subcaption.sty

! LaTeX Error: Command \subcaption already defined.
               Or name \end... illegal, see p.192 of the manual.

See the LaTeX manual or LaTeX Companion for explanation. 
Type  H <return>  for immediate help.  ...                                    

l.57      \caption@gobble}}
                           % 
?

Cuando lo salto, aparece otro error.

Package caption Warning: \caption will not be redefined since it's already
(caption)                redefined by a document class or package which is
(caption)                unknown to the caption package.
See the caption package documentation for explanation.


! Package caption Error: The `subcaption' package does not work correctly
(caption)                in compatibility mode.

See the caption package documentation for explanation.
Type  H <return>  for immediate help.
 ...                                              

l.7 \begin{document}

? 

Si sigo me sale bien la cifra, pero me gustaría saber que pasa. Nunca tuve problemas para insertar subfiguras con otras clases de documentos (por ejemplo, IEEEtran).

Aquí hay un MWE:

\documentclass[prodmode,acmtecs]{acmsmall}

\usepackage{graphicx}
\usepackage{caption}
\usepackage{subcaption}

\begin{document}

\begin{figure}
 \begin{subfigure}[b]{0.5\textwidth}
                \includegraphics{acmsmall-mouse.pdf}
                \caption{A subfigure}
        \end{subfigure}%
  \begin{subfigure}[b]{0.5\textwidth}
                \includegraphics{acmsmall-mouse.pdf}
                \caption{Another subfigure}
        \end{subfigure}%
\caption{Several figures}
\end{figure}

\end{document}

¿Existe una forma preferida de crear subfiguras con acmsmall?

Respuesta1

acsmall.clse imágenes usadas descargadas aquí:http://www.acm.org/publications/latex_style/v2-acmsmall.zip


La acmsmallclase define un \subcaptioncomando, por lo que puedes usar minipages en lugar de subfigures para tu propósito.

MWE:

\documentclass[prodmode,acmtecs]{acmsmall}

\usepackage{graphicx}

\begin{document}

\begin{figure}
\begin{minipage}[b]{0.5\textwidth}
\includegraphics{acmsmall-mouse.pdf}\\
\subcaption{A subfigure}
\end{minipage}%
\begin{minipage}[b]{0.5\textwidth}
\includegraphics{acmsmall-mouse.pdf}\\
\subcaption{Another subfigure}
\end{minipage}%
\caption{Several figures}
\end{figure}

\end{document} 

Producción:

ingrese la descripción de la imagen aquí

Respuesta2

La clase acmsmallestá definiendo un comando \subcaptionque da como resultado los subtítulos que se muestran en la respuesta de Karl. Si no está estrictamente vinculado a esa plantilla y desea utilizar el etiquetado normal a partir del paquete subcaption, tendrá que anular la definición de ese mismo comando. El motivo para hacerlo podría ser que desea hacer referencia a algún subfigure( \ref{fig:a}) como se le ha solicitado.aquí.

Esto podría parecerse a lo siguiente:

% arara: pdflatex

\documentclass[prodmode,acmtecs]{acmsmall}
\let\subcaption\relax
\usepackage{graphicx}
\usepackage{caption}
\usepackage{subcaption}
\usepackage{hyperref}

\begin{document}    
    \begin{figure}
        \begin{subfigure}[b]{0.49\textwidth}
            \includegraphics{acmsmall-mouse.pdf}
            \subcaption{A subfigure}\label{fig:a}
        \end{subfigure}
        \begin{subfigure}[b]{0.49\textwidth}
            \includegraphics{acmsmall-mouse.pdf}
            \subcaption{Another subfigure}\label{fig:b}
        \end{subfigure}
        \caption{Several figures}\label{fig:1}
    \end{figure}    
\end{document}

ingrese la descripción de la imagen aquí


Tenga en cuenta que esto no está en la idea del editor que proporcionó esa plantilla. Antes de modificar algo así, deberías hablar con el mismo. Quizás los subtítulos numerados no se ajusten al diseño general. En este caso, tendrás que hacer referencia comoas you can see in Figure~\ref{fig:1} (left pic.)

Respuesta3

Ok, parece que no puedo comentar la respuesta de LaRiFaRi así que aquí escribo... La respuesta de LaRiFaRi no funciona tal como está. No sé por qué pero solo logré hacerlo funcionar agregando el hyperrefpaquete. Aquí está el código:

\documentclass[prodmode,acmtecs]{acmsmall}
\let\subcaption\relax
\usepackage{caption}
\usepackage{subcaption}
\usepackage{graphicx}
\usepackage{hyperref} %WHY is that ?


\begin{document}

\begin{figure}
    \begin{subfigure}[b]{0.49\textwidth}
        \includegraphics{acmsmall-mouse.pdf}
        \subcaption{A subfigure}\label{fig:a}
    \end{subfigure}
    \begin{subfigure}[b]{0.49\textwidth}
        \includegraphics{acmsmall-mouse.pdf}
        \subcaption{Another subfigure}\label{fig:b}
    \end{subfigure}
    \caption{Several figures}\label{fig:1}
\end{figure} 
\end{document}

Y la imagen resultante: resultado

Respuesta4

Resulta que incluir hyperreftiene un efecto más: puedo usar

\begin{minipage}
...
\subcaption{...} 
...
\end{minipage}

Sin tener que utilizar el entorno de subfigura en ningún lugar, de forma explícita.

información relacionada