Estoy intentando insertar una matriz dentro del título de una imagen.
El pdf compilado muestra la imagen, pero da un error que dice:
\caption@{indescifrable} tiene un } adicional
¿Puede alguien indicarme dónde podría haber insertado un extra }
? ¡Porque no lo veo por ningún lado!
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{amsthm}
\usepackage{amsmath}
\usepackage{thmtools}
\usepackage{graphicx}
\setlength\parindent{0pt}
\usepackage[linesnumbered,ruled]{algorithm2e}
\usepackage{hyperref}
\usepackage{caption}
\usepackage{cleveref}
\begin{document}
\section{Introduction}
\begin{figure}[ht]
\begin{center}
\includegraphics{jpg-to-pdf.pdf}
\end{center}
\caption{$x^\star =\begin{bmatrix} \alpha, \beta, \gamma \end{bmatrix}$}
\label{fig:just_picture_of_cute_cat}
\end{figure}
\end{document}
¿Alguien sabe también quéydblag¿es?
Respuesta1
\begin{matrix}
y \end{matrix}
son comandos frágiles que no sobreviven al proceso de escritura al que se está conectando \caption
: el contenido se escribe en el .aux
archivo y .lof
posteriormente en el archivo \@writefile
.
Para evitar la fragilidad allí, los comandos \begin{matrix}
y \end{matrix}
deben protegerse con \protect
, es decir, \protect\begin{matrix}
y \protect\end{matrix}
.
Si la protección no está activada, \caption
encuentra prematuramente un }
que no es el corchete final de su argumento obligatorio.
Una mejor manera es aplicar el argumento opcional de \caption
y evitar la escritura de contenido matemático en el archivo .aux
and .lof
, es decir, usar el estilo short
and long caption
.
Sin embargo, si se debe escribir contenido frágil en el short
argumento del título, la protección debe habilitarse nuevamente.
Alternativamente, utilice comandos robustos.
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{amsthm}
\usepackage{amsmath}
\usepackage{thmtools}
\usepackage{graphicx}
\setlength\parindent{0pt}
\usepackage[linesnumbered,ruled]{algorithm2e}
\usepackage{hyperref}
\usepackage{caption}
\usepackage{cleveref}
\begin{document}
\listoffigures
\section{Introduction}
\begin{figure}[ht]
\centering
\includegraphics{ente}
\caption{$x^\star =\protect\begin{bmatrix} \alpha, \beta, \gamma \protect\end{bmatrix}$}
\caption[Foo content]{$x^\star =\begin{bmatrix} \alpha, \beta, \gamma \end{bmatrix}$}
\label{fig:just_picture_of_cute_cat}
\end{figure}
\end{document}
Con un gato :-P
Respuesta2
Agregue \protect
al entrar y salir del entorno:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{amsthm}
\usepackage{amsmath}
\usepackage{graphicx}
\setlength\parindent{0pt}
\usepackage{caption}
\usepackage{hyperref}
\usepackage{cleveref}
\begin{document}
\begin{figure}[ht]
\centering
\includegraphics[scale=0.5]{vent_cat}
\caption{$x^\star =\protect\begin{bmatrix} \alpha, \beta, \gamma \protect\end{bmatrix}$}
\label{fig:just_picture_of_cute_cat}
\end{figure}
\end{document}