tcolorbox
手册提供了以下示例:
有人能建议我如何创建这种类型的框吗 - 要添加的行数必须灵活(似乎 tcolorbox 除了顶部和底部之外没有其他选项):
答案1
这是一种使用可能性mdframed
:
\documentclass{article}
\usepackage{xcolor}
\usepackage[framemethod=tikz]{mdframed}
\definecolor{mybrown}{RGB}{128,64,0}
\mdfdefinestyle{mystyle}{%
linecolor=mybrown,outerlinewidth=1pt,%
frametitlerule=true,frametitlefont=\sffamily\bfseries\color{white},%
frametitlerulewidth=1pt,frametitlerulecolor=mybrown,%
frametitlebackgroundcolor=mybrown,
backgroundcolor=mybrown!05,
innertopmargin=\topskip,
roundcorner=5pt
}
\mdtheorem[style=mystyle]{example}{Example}
\gdef\Sepline{%
\par\noindent\makebox[\linewidth][l]{%
\hspace*{-\mdflength{innerleftmargin}}%
\tikz\draw[thick,dashed,gray!60] (0,0) --%
(\textwidth+\the\mdflength{innerleftmargin}+\the\mdflength{innerrightmargin},0);
}\par\nobreak}
\begin{document}
\begin{example}[The Title]
The contents of the first part.
\Sepline
\noindent The contents of the second part.
\Sepline
\noindent The contents of the third part.
\Sepline
\noindent The contents of the fourth part.
\end{example}
\end{document}
现在,这是一个修改,没有使用类似定理的结构,而是使用一个带有强制参数的简单环境来提供标题:
\documentclass{article}
\usepackage{xcolor}
\usepackage[framemethod=tikz]{mdframed}
\definecolor{mybrown}{RGB}{128,64,0}
\mdfdefinestyle{mystyle}{%
linecolor=mybrown,outerlinewidth=1pt,%
frametitlerule=true,frametitlefont=\sffamily\bfseries\color{white},%
frametitlerulewidth=1pt,frametitlerulecolor=mybrown,%
frametitlebackgroundcolor=mybrown,
backgroundcolor=mybrown!05,
innertopmargin=\topskip,
roundcorner=5pt
}
\newmdenv[style=mystyle]{exa}
\newenvironment{example}[1]
{\begin{exa}[frametitle=#1]}
{\end{exa}}
\gdef\Sepline{%
\par\noindent\makebox[\linewidth][l]{%
\hspace*{-\mdflength{innerleftmargin}}%
\tikz\draw[thick,dashed,gray!60] (0,0) --%
(\textwidth+\the\mdflength{innerleftmargin}+\the\mdflength{innerrightmargin},0);
}\par\nobreak}
\begin{document}
\begin{example}{The Title}
The contents of the first part.
\Sepline
\noindent The contents of the second part.
\Sepline
\noindent The contents of the third part.
\Sepline
\noindent The contents of the fourth part.
\end{example}
\end{document}
答案2
tcolorbox
没有提供添加多个下部的代码。但您可以添加其他行:
\documentclass{report}
\usepackage{tikz,tcolorbox}
\makeatletter
\newcommand{\DrawLine}{%
\begin{tikzpicture}
\path[use as bounding box] (0,0) -- (\linewidth,0);
\draw[color=red!75!black,dashed,dash phase=2pt]
(0-\kvtcb@leftlower-\kvtcb@boxsep,0)--
(\linewidth+\kvtcb@rightlower+\kvtcb@boxsep,0);
\end{tikzpicture}%
}
\makeatother
\begin{document}
\begin{tcolorbox}[colback=red!5,colframe=red!75!black,title=My nice heading]
This is another \textbf{tcolorbox}.
\tcblower
Here, you see the lower part of the box.
\DrawLine
and some more
\end{tcolorbox}
\end{document}
得出: