考虑以下代码:
% Equations and theorems style
\counterwithin*{equation}{section}
\counterwithin*{equation}{subsection}
\renewcommand{\theequation}{%
\thesection.%
\ifnum\value{subsection}>0 \arabic{subsection}.\fi
\arabic{equation}%
}
\newtheoremstyle{break}
{\topsep}{\topsep}%
{\upshape}{}%
{\bfseries}{}%
{\newline}{}%
\theoremstyle{break}
\newtheorem{thm}[equation]{Theorem}
\newtheorem{cor}[equation]{Corollary}
现在,当我创建定理和推论时,它们遵循小节的编号,并且每次创建时,计数器都会增加:
\section{Hey}
\subsection{Hey hey}
\begin{thm}[Theorem]
\end{thm}
\begin{cor}[Corollary]
\end{cor}
\begin{thm}[Theorem]
\end{thm}
现在,我想:
- 为我的定理着色
- 保持相同的编号系统
- 轻松重新格式化我现有的 .tex 文件
为此,我想使用彩色盒子,并创建两个thm, cor
将“覆盖”旧环境的环境。我按照提供的链接中的设置进行设置,这是获胜的答案,调用环境thm, cor
(参见编辑)。
但效果不太好:
- 我无法指定 tcolorbox 的编号,该怎么办?
- 我过去常常将
\label{}
命令放在我的定理下面,现在这会引发 tcolorbox 错误:\GTS@CdrTwo 的参数有一个额外的}。 \par l.10 \label{a_label}
有人能帮忙并提供解决错误的方法吗?谢谢!
编辑
答案1
最简单的方法是使用\tcolorboxenvironment
。
\documentclass{article}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage[many]{tcolorbox}
% Equations and theorems style
\counterwithin*{equation}{section}
\counterwithin*{equation}{subsection}
\renewcommand{\theequation}{%
\thesection.%
\ifnum\value{subsection}>0 \arabic{subsection}.\fi
\arabic{equation}%
}
\newtheoremstyle{break}
{\topsep}{\topsep}%
{\upshape}{}%
{\bfseries}{}%
{\newline}{}%
\theoremstyle{break}
\newtheorem{thm}[equation]{Theorem}
\newtheorem{cor}[equation]{Corollary}
\tcolorboxenvironment{thm}{colback=red!5!white,colframe=red!75!black}
\tcolorboxenvironment{cor}{colback=red!5!white,colframe=red!75!black}
\begin{document}
\section{Hey}
\subsection{Hey hey}
\begin{thm}[Theorem]
Some text
\end{thm}
\begin{cor}[Corollary]
Some text
\end{cor}
\subsection{Subsection}
\begin{thm}[Theorem]
Some text
\end{thm}
\end{document}
调整第二个参数中的选项以适合您的喜好。