我正在尝试运行以下脚本
\documentclass[•]{article}
\usepackage{subfigure}
\begin{document}
\begin{figure}[htp]
\begin{center}
\subfigure[Original image]{\label{fig:edge-a}\includegraphics[scale=0.75]{1}}
\subfigure[After Laplace edge detection]{\label{fig:edge-b}\includegraphics[scale=0.75]{3}} \\
\subfigure[After Sobel edge detection]{\label{fig:edge-c}\includegraphics[scale=0.75]{2}}
\end{center}
\caption{Various edge detection algorithms}
\label{fig:edge}
\end{figure}
\end{document}
该脚本的基础是此链接作者在其中解释了如何放置多个图形,并分别为每个图形和整个图形集添加局部和全局标题。唯一的区别是我使用自己的图像和自己的序言(链接没有提供)。
当我运行它时出现以下错误:
! 未定义控制序列。\label {fig:edge-a}\includegraphics[scale=0.75]{1} ...ig:edge-a}\includegraphics[scale=0.75]{1}}
为什么会出现这种情况? \label 控制序列不是独立于任何 usepackage 吗? 我该如何解决这个问题?
答案1
你得到的错误是
! Undefined control sequence.
<argument> \label {fig:edge-a}\includegraphics
[scale=0.75]{1}
l.7 ...fig:edge-a}\includegraphics[scale=0.75]{1}}
这表明未定义的控制序列是\includegraphics
。这是因为你没有
\usepackage{graphicx}
请注意,subfigure
几年前已被弃用,其后继者是subfig
;该命令\subfigure
应更改为\subfloat
。
\documentclass{article}
\usepackage{subfig}
\usepackage{graphicx}
\begin{document}
\begin{figure}[htp]
\centering
\subfloat[Original image]{\label{fig:edge-a}\includegraphics[scale=0.75]{1}}
\subfloat[After Laplace edge detection]{\label{fig:edge-b}\includegraphics[scale=0.75]{3}} \\
\subfloat[After Sobel edge detection]{\label{fig:edge-c}\includegraphics[scale=0.75]{2}}
\caption{Various edge detection algorithms}
\label{fig:edge}
\end{figure}
\end{document}
使用\centering
,而不是center
环境。