围绕整个部分的框架,包括浮点数?

围绕整个部分的框架,包括浮点数?

我想创建一个环境,用于直观地将文本部分标记为“需要重做”、“未完成”或类似内容。为此,我想在部分周围放置一个彩色框架,我通常会使用 来实现这一点tcolorbox

但是,这些内容元素通常包含浮动元素(图形、表格)。tcolorbox 中的浮动元素(mdframed 中的浮动元素应该也一样)不起作用。

是否有某种方法可以实现跨页面的视觉标记,并允许浮动?

示例代码

enter image description here

\documentclass{article}
\usepackage[dvipsnames]{xcolor}
\usepackage[scale=0.95,a6paper]{geometry}
\usepackage[skins,breakable]{tcolorbox}
\usepackage{todonotes}
\usepackage{lipsum}

\makeatletter
\newcommand\changecolor[1]{%
  \color{#1}\let\default@color\current@color
}
\makeatother

\begin{document}

THIS WORKS WELL, BUT LACKS SOME ASPECTS \\
SUCH AS HIGHLIGHTING ACCIDENTIALLY \\
NESTED ENVRIONMENTS. \\

\newenvironment{needsreview_simple}[1][]{
  \par\noindent\changecolor{blue}%
  \hrulefill\space
  \textsc{#1}%
  \space\hrulefill\par
}{
  \par\noindent\hrulefill\par
}


\begin{needsreview_simple}[Some stuff]
  \lipsum[1-2]
  \begin{figure}
    \centering
    \missingfigure{hello world}
    \caption{Hello world}
  \end{figure}
  \begin{needsreview_simple}[Nested]
    \lipsum[3]
  \end{needsreview_simple}
\end{needsreview_simple}

\clearpage

THIS VARIANT CREATES ERRORS BECAUSE \\
THE FIGURE ENVIRONMENT ISN'T ALLOWED \\
INSIDE A TCOLORBOX. THE FLOAT IS  \\
**LOST** AS A CONSEQUENCE. \\

\newenvironment{needsreview_tcbox}[1][]{%
  \tcolorbox[enhanced,breakable,colframe=blue,col=blue,title={\textsc{#1}}]%
  \changecolor{blue}%
}{
  \endtcolorbox
}

\begin{needsreview_tcbox}[Some stuff]
  \lipsum[1-3]
  \begin{figure}
    \centering
    \missingfigure{hello world}
    \caption{Hello world}
  \end{figure}
\end{needsreview_tcbox}



\end{document}

相关内容