我正在嘗試在圖像標題內插入一個矩陣。
編譯後的 pdf 顯示圖片,但出現錯誤:
\caption@{無法破解} 有一個額外的 }
有人可以指出我可能在哪裡插入了額外的內容嗎}
?因為我在任何地方都沒有看到它!
\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}
有人也知道什麼嗎伊德布拉格是?
答案1
\begin{matrix}
和\end{matrix}
是脆弱的命令,在連接到的寫入過程中無法生存\caption
- 內容將寫入.aux
文件,並.lof
稍後使用\@writefile
.
為了防止那裡的脆弱性,命令\begin{matrix}
和\end{matrix}
必須用\protect
,即\protect\begin{matrix}
和 來保護\protect\end{matrix}
。
如果未啟動保護,則\caption
過早遇到}
不是其強制參數的結束括號的情況。
更好的方法是應用可選參數\caption
and 來防止將數學內容寫入.aux
and.lof
文件,即使用short
andlong caption
樣式。
但是,如果在標題參數中寫入易碎內容short
,則必須再次啟用保護。
或使用強大的命令。
\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}
和一隻貓在一起:-P
答案2
新增\protect
進入和離開環境:
\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}