我想创建一个这样的新环境:
\newenvironment{smallbox}[1][black]{
\colorlet{ShadowColor}{#1!70!black}\vspace{10px}
\begin{center}
\begin{tcolorbox}[hbox,valign=center,colback=#1!5!white, colframe=#1!80!black, enhanced jigsaw,sharp corners, drop shadow=ShadowColor]
}
{\end{tcolorbox}
\end{center}
\vspace{10px}
}
当我将它放入 .sty 文件中并将 .sty 文件用作新 .tex 中的包,然后使用 smallbox 环境时,出现以下错误:
\begin{tcolorbox} on input line 154 ended by \end{smallbox}
如果我从 .sty 文件中删除 tcolorbox 中的参数 hbox,则 .tex 会进行编译。
如果我尝试直接在 .tex 文件中写入,
\begin{tcolorbox}[hbox,valign=center,colback=#1!5!white, colframe=#1!80!black, enhanced jigsaw,sharp corners, drop shadow=ShadowColor]
%stuff
\end{tcolorbox}
这也行得通。因此,定义一个将 hbox 作为参数传递给 tcolorbox 的新环境存在问题。
有任何想法吗?