从这个问题开始\boxed 边框颜色我只想给盒子上色,但我也有数字上色。如果不使用mdframed
、tcolorbox
或其他包,是否有一个非常简单的替代方法(没有宏)来获得盒子的颜色?我的 MWE 是:
\documentclass[12pt]{article}
\usepackage{amsmath,amssymb,xcolor}
\begin{document}
\begin{equation}
\colorlet{oldcolor}{.}
\color{magenta}
\boxed{\color{oldcolor}{F(x)=\int_{0}^{x}f(t)dt}}
\end{equation}
\end{document}
答案1
tcolorbox
作为参考,这里有一个使用命令的版本tcbhighmath
:
\documentclass{article}
\usepackage[many]{tcolorbox}
\tcbset{
every box/.style={
highlight math style={sharp corners,colback=white,colframe=magenta},
}
}
\begin{document}
\begin{equation}
\tcbhighmath{F(x)=\int_{0}^{x}f(t)dt}
\end{equation}
\end{document}
您可能希望查看tcolorbox 文档以供进一步阅读;特别是,你可能想看看\tcboxmath
。
答案2
好的,按照要求。无论如何,您很可能想切换回正常颜色,所以
\documentclass[12pt]{article}
\usepackage{amsmath,amssymb,xcolor}
\begin{document}
\begin{equation}
\colorlet{oldcolor}{.}
\color{magenta}
\boxed{\color{oldcolor} F(x)=\int_{0}^{x}f(t)\,\mathrm{d}t}\color{oldcolor}
\end{equation}
\end{document}
不用说,有类似的软件包empheq
,tcolorbox
特别是两者的组合,可以自动处理这些事情。
答案3
我建议定义一个colorboxed
基于的命令\fcolorbox
,它有两个强制参数——框架的颜色和框架的内容,以及作为可选参数的框架的背景:
\documentclass[12pt]{article}
\usepackage{amsmath,amssymb}
\usepackage[svgnames]{xcolor}
\makeatletter
\newcommand{\colorboxed}[3][white]{\fcolorbox{#2}{#1}{\m@th$\displaystyle#3$}}
\makeatother
\begin{document}
\begin{equation}
\colorboxed{IndianRed}{F(x)=\int_{0}^{x}f(t)dt}
\end{equation}
\begin{equation}
\colorboxed[LavenderBlush!30]{IndianRed}{F(x)=\int_{0}^{x}f(t)dt}
\end{equation}
\end{document}