例如,假设我有一个方程
x = 2 + 1 - 2 - 1 (显然是玩具示例)
我希望 +2 和 -2 抵消,+1 和 -1 抵消
所以在 Latex 中我想要类似的东西
有没有一种简单的方法可以在 Latex 中实现多色删除线或取消?
这里有类似的问题,但它是针对全局着色的 用不同颜色划掉
答案1
一种可能性是使用cancel
。(编辑:已\textcolor
用颜色替换,非常感谢 Werner!)
\documentclass{article}
\usepackage{cancel,xcolor}
\newcommand{\Cancel}[2][black]{{\color{#1}\cancel{\color{black}#2}}}
\begin{document}
\[x~=~\Cancel[blue]{2}+\Cancel[red]{1}-
\Cancel[blue]{2}-\Cancel[red]{1}\]
\end{document}
但请注意,环境色不会产生效果,也就是说,不幸的是,{\color{green}\Cancel[blue]{2}+\Cancel[red]{1}}
您需要这样做\Cancel[blue]{\color{green} 2}+\Cancel[red]{\color{green} 1}
。我想会有更好的方法,并期待学习新的技巧。
编辑:只是为了好玩:一个 Ti钾Z 版本。该选项X
将会进行某种\xcancel
删除。
\documentclass{article}
\usepackage{tikz}
\newif\ifCancelX
\tikzset{X/.code={\CancelXtrue}}
\newcommand{\Cancel}[2][]{\relax
\ifmmode%
\tikz[baseline=(X.base),inner sep=0pt] {\node (X) {$#2$};
\tikzset{#1}
\draw[#1,overlay,shorten >=-2pt,shorten <=-2pt] (X.south west) -- (X.north east);
\ifCancelX
\draw[#1,overlay,shorten >=-2pt,shorten <=-2pt] (X.north west) -- (X.south east);
\fi}
\else
\tikz[baseline=(X.base),inner sep=0pt] {\node (X) {#2};
\tikzset{#1}
\draw[#1,overlay,shorten >=-2pt,shorten <=-2pt] (X.south west) -- (X.north east);
\ifCancelX
\draw[#1,overlay,shorten >=-2pt,shorten <=-2pt] (X.north west) -- (X.south east);
\fi}%
\fi}
\begin{document}
\[x~=~\Cancel[blue,X]{2}+\Cancel[red]{\frac{1}{2}}-
\Cancel[blue]{2}-\Cancel[red, line width=1pt]{\frac{1}{2}}\]
\end{document}