为公式添加颜色下划线

为公式添加颜色下划线

我想用不同的颜色为公式的不同部分加下划线。最好的选择是什么?Soul 似乎只为每个文档提供一种颜色。

答案1

\documentclass{article}
\usepackage{xcolor}

\newsavebox\MBox
\newcommand\Cline[2][red]{{\sbox\MBox{$#2$}%
  \rlap{\usebox\MBox}\color{#1}\rule[-1.2\dp\MBox]{\wd\MBox}{0.5pt}}}
\begin{document}

\[ f(x)=\int_1^\infty\Cline{x^2+\frac12\ln(x)}\mathrm{d}x
       = \Cline[blue]{\int_1^\infty x^2} \mathrm{d}x 
       + \Cline[cyan]{\int_1^\infty\frac12\ln(x)} \mathrm{d}x \]

\end{document}

替代文本

答案2

这与 Herbert 和 Alan 提供的方法稍有不同,他们使用了 TeX 自己的鲜为人知的命令\underline

\documentclass{article}
\usepackage{xcolor}

\def\mathunderline#1#2{\color{#1}\underline{{\color{black}#2}}\color{black}}
\begin{document}

\[ f(x)=\int_1^\infty\mathunderline{red}{x^2+\frac12\ln(x)}\mathrm{d}x
       = \mathunderline{blue}{\int_1^\infty x^2} \mathrm{d}x 
       + \mathunderline{green}{\int_1^\infty\frac12\ln(x)} \mathrm{d}x \]

\end{document}

答案3

\ul您可以使用该包轻松创建该命令的多色版本soul

\documentclass{article}
\usepackage{xcolor}
\usepackage{soul}

%This command takes a colour as an optional argument; the default colour is black.

\newcommand{\myul}[2][black]{\setulcolor{#1}\ul{#2}\setulcolor{black}}

\begin{document}
     \myul[red]{Red underline}

     \myul[blue]{blue underline}

     \myul[green]{green underline}

     \myul{black underline}
 \end{document}

看来此解决方案不适用于数学模式下的下划线,因此 Herbert 的解决方案显然是最好的。对于常规文本,此解决方案将如宣传的那样有效。

答案4

我在使用上述任何方法时都遇到了困难beamer,但我发现只需更改颜色、声明下划线,然后在下划线命令中将颜色改回来似乎就可以了。例如:

\newcommand{\rul}[1]{\textcolor{red}{\underline{\textcolor{black}{#1}}}}

给了我新的命令\rul{sample text},用红色在黑色示例文本下划线。我怀疑上述方法更复杂,但这对我来说似乎很有效,并且不需要该soul包。

相关内容