Utilice la imagen como etiqueta para detallar

Utilice la imagen como etiqueta para detallar

Mientras ayudaba a una amiga con su tesis, me encontré con un problema extraño con itemize. Ella necesita usar alguna imagen pequeña como etiqueta para su artículo, y le sugerí usar \item[\includegraphics{xx}]. Sin embargo, descubrimos que usar el argumento opcional for para \includegraphicsestablecer algún parámetro de la figura (es decir, el tamaño) hace que la compilación falle.

En cambio, si creo un comando auxiliar que solo toma un argumento, la compilación avanza sin problemas.

¿Alguien puede darme una pista de por qué sucede esto? ¿Y tal vez dónde mirar para entender lo que está sucediendo aquí? ¡Muchas gracias!

Aquí un MWE, requiere la imagen example.pngen su directorio de trabajo:

\documentclass{article}
\usepackage{graphicx}

\newcommand{\imagebullet}[1]{\includegraphics[width=0.5cm]{#1}}

\begin{document}
    \begin{itemize}
        \item[\imagebullet{example.png}] This works
        \item[\includegraphics[width=0.5cm]{example.png}] This does not!
    \end{itemize}
\end{document}

Respuesta1

TeX no rastrea el anidamiento de corchetes como lo hace con las llaves.

Cuando anidas llaves

{.... { .... } ....}
1     2      2     1

entonces TeX sabe qué pares van juntos. Esto no sucede con los corchetes. Aquí el código simplemente busca el siguiente corchete de cierre. Entonces TeX los emparejará así

\item[\includegraphics[width=0.5cm]{example.png}]
     1                2           1

y tu mando se rompe. Para evitar esto, puede ocultar el soporte interior en un grupo de llaves:

\item[{\includegraphics[width=0.5cm]{example.png}}]
     1{                2           2             }1   

Respuesta2

Dado que utiliza la misma imagen en todos los elementos, puede ser más fácil modificar la \imagebulletmacro como desee y luego simplemente insertarla [\imagebullet].

\documentclass{article}
\usepackage{graphicx}

\newcommand{\imagebullet}{$\vcenter{\hbox{\includegraphics[width=0.5cm]{example-image}}}$}

\begin{document}
    \begin{itemize}
        \item[\imagebullet] This works
        \item[\imagebullet] This also works 
    \end{itemize}
\end{document}

ingrese la descripción de la imagen aquí

información relacionada