tcolorbox 中的字幕与 mdframed 中的类似

tcolorbox 中的字幕与 mdframed 中的类似

到目前为止,我已经使用过框架制作漂亮的相框。我最近发现彩色盒子,并发现它比 mdframed 有几个优点。在我的实际和未来工作中,我更喜欢 tcolorbox。不过,mdframed 中有一个好东西是\mdfsubtitle。您可以将带框的框分成几个“部分”,并带有格式良好的标题,如图所示(从 mdframed 文档中复制):

带有一个副标题的框架示例;从文档中复制

我的问题:有没有一种(或多或少)简单的方法可以用 tcolorbox 制作这样的字幕?

答案1

据我所知,没有像在内直接的选项,mdframed但您可以轻松构建字幕框。

\documentclass{article}
\usepackage{tcolorbox}
\tcbuselibrary{skins}

\newtcolorbox{mybox}{
   enhanced,
   bottom=1pt,
   top=1pt,
   arc=0pt,
   boxrule=.4pt,
   before=\vskip6pt,
   colback=yellow!70!white,
   oversize
}

\begin{document}
  \begin{tcolorbox}[title=Theorem,colbacktitle=yellow!70!white,colback=blue!20!white,coltitle=black]
     Some text ...
  \begin{mybox}
     test
  \end{mybox}
     some text
  \end{tcolorbox}
\end{document}

在此处输入图片描述

这个想法是创建一个自定义 tcolorbox(mybox在 mwe 中),您将使用它作为字幕框。每次您想要字幕时,只需将一个嵌套mybox到主框中即可。内部框使用键oversize来删除外部框的边距,从而产生所需的效果。

答案2

tcolorbox现在有一个\tcbsubtitle选项:

在此处输入图片描述

代码:

\documentclass{article}
\usepackage{tcolorbox}
\tcbuselibrary{skins}

\newtcolorbox{mybox}{
   enhanced,
   bottom=1pt,
   top=1pt,
   arc=0pt,
   boxrule=.4pt,
   before=\vskip6pt,
   colback=yellow!70!white,
   oversize
}

\begin{document}
  \begin{tcolorbox}[title=Theorem,colbacktitle=yellow!70!white,colback=blue!20!white,coltitle=black]
     Some text ...
     \tcbsubtitle{test}
     some text
  \end{tcolorbox}
\end{document}

相关内容