\begin{figure}
를 사용 하거나 \begin{table}
사용한 후에 "외부 파 모드가 아닙니다"라는 오류 메시지가 나타납니다 \footnote
.
맞습니다 \footnote
.
아마도 내가 사용하고 있는 패키지에 문제가 있는 것 같습니다.
이 문제가 어디서 발생했는지 알 수 있는 방법이 있나요?
\documentclass[14pt,fleqn,twoside,openright]{book}
\usepackage[square,sort,comma,numbers]{natbib}
\bibliographystyle{siam}
\usepackage{amsmath,amsfonts}\usepackage{amssymb}
\usepackage[bottom]{footmisc}
\usepackage{graphicx,xcolor}
\usepackage{multicol,enumerate}
\usepackage{wrapfig}
\usepackage{framed}
\usepackage{fancybox}
\usepackage{enumerate}
\usepackage{subfigure}
\usepackage[avantgarde]{quotchap}
\usepackage{makeidx}
\makeindex
\usepackage{fancyhdr}
\usepackage[heightrounded,footskip=50pt,headheight=30pt,head=17pt,headsep=20pt,twoside,a4paper,
bindingoffset=1.4 cm,left=1.4cm,right=1.5cm,top=3cm,bottom=3.5cm]{geometry}
\usepackage{float}
\newfloat{insert}{tbh}{lop}
\floatname{insert}{insert}
\newfloat{program}{tbhp}{lop}
\floatname{program}{Program}
\begin{document}
\footnote{test}
\begin{insert}[tb]
\centering
\includegraphics[width=0.7\textwidth, angle=0]{insertion}
\end{insert}
\end{document}
답변1
\insert
TeX 프리미티브입니다. 따라서 부동소수점을 정의하면 문제의 원인인 (및 )이 insert
재정의됩니다 .\insert
\endinsert
이 문제를 해결하려면 float를 다음과 같이 정의하십시오 insertion
.
\usepackage{float}
\newfloat{insertion}{tbh}{lop}
\floatname{insertion}{insert}
%...
\begin{insertion}
%...
\end{insertion}
답변2
float.sty
위험한 정의에 대해 경고하도록 수정할 수 있습니다 . 이후 정의가 \begin{whatever}
필요합니다 . \whatever
귀하의 경우 패키지는 그대로 유지됩니다.재정의하다 \insert
그리고 이것은 매우 나쁜 일입니다. 왜냐하면 이것은 \insert
원시적이기 때문입니다(이것은 부동 소수점의 맥락에서 사용되지만 이것은 수수께끼의 오류 메시지의 이유이기는 하지만 실제로는 관련이 없습니다).
\documentclass{book}
\usepackage{float}
% fix \newfloat
\makeatletter
\let\@float@newfloat\newfloat
\renewcommand{\newfloat}[3]{%
\expandafter\@ifdefinable\csname #1\endcsname{%
\@float@newfloat{#1}{#2}{#3}%
}%
}
\makeatother
% end of fix
\newfloat{insert}{tbh}{lop}
\floatname{insert}{insert}
\newfloat{program}{tbhp}{lop}
\floatname{program}{Program}
\begin{document}
\footnote{test}
\begin{insert}[tb]
\centering
\includegraphics[width=0.7\textwidth, angle=0]{insertion}
\end{insert}
\end{document}
이 수정으로 인해 오류가 발생합니다.
! LaTeX Error: Command \insert 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.16 \newfloat{insert}{tbh}{lop}
그러면 이라는 float 유형을 정의할 수 없다는 것이 분명해집니다 insert
. 이제 다른 이름을 선택하십시오.
newfloat
해당 기능이 필요하지 않은 경우 최신 패키지를 사용하는 것이 좋습니다 \restylefloat
.
\documentclass{book}
\usepackage{newfloat}
\DeclareFloatingEnvironment[
filext=lop,
listname={List of Inserts},
name=Insert,
placement=htbp,
]{insertion}
\begin{document}
\footnote{test}
\begin{insertion}[tbp]
\centering
\includegraphics[width=0.7\textwidth, angle=0]{insertion}
\end{insertion}
\end{document}
이 패키지는 선택한 환경 이름이 이미 사용된 경우 기본적으로 경고합니다.