在 amsthm 环境中允许使用图形,但在 tcolorbox 定理环境中不允许使用

在 amsthm 环境中允许使用图形,但在 tcolorbox 定理环境中不允许使用

我可以看到,在使用 amsthm 包定义的定理环境中,图形可以正常工作,没有任何错误,但它在 tcolorbox 定理环境中不起作用。相反,它会抛出错误“!LaTeX 错误:浮点数丢失。”为什么会这样?此外,我该如何解决这个问题?这是一个最小的例子

\documentclass[12pt, letter]{article}

\usepackage{amsthm}
\usepackage{tikz}
\usepackage{tcolorbox}

\newtheorem{thm}{Theorem}

\tcbuselibrary{theorems}
\newtcbtheorem[number within=section]{mytheo}{My Theorem}%
{colback=green!5, colframe=green!35!black, fonttitle=\bfseries}{th}

\begin{document}

\begin{thm}
Test.
\begin{figure}[h]
    \caption{An empty figure}
\centering
Test.
\end{figure}
\end{thm}



\begin{mytheo}{Title}{stuff}
    ASDF testing stuff!!!
\begin{figure}[h]
    \caption{An empty figure}
\centering
Test.
\end{figure}
\end{mytheo}


\end{document}

答案1

框不能包含浮动。使用\begin{figure}[H](requires \usepackage{float})。这会将浮动转换为允许出现在框内的迷你页面。

\documentclass[12pt, letter]{article}

\usepackage{amsthm}
\usepackage{float}
\usepackage{tikz}
\usepackage{tcolorbox}

\newtheorem{thm}{Theorem}

\tcbuselibrary{theorems}
\newtcbtheorem[number within=section]{mytheo}{My Theorem}%
{colback=green!5, colframe=green!35!black, fonttitle=\bfseries}{th}

\begin{document}

\begin{thm}
Test.
\begin{figure}[h]
    \caption{An empty figure}
\centering
Test.
\end{figure}
\end{thm}



\begin{mytheo}{Title}{stuff}
    ASDF testing stuff!!!
\begin{figure}[H]
    \caption{An empty figure}
\centering
Test.
\end{figure}
\end{mytheo}


\end{document}

在此处输入图片描述

相关内容