这是我的代码
\documentclass{article}
\usepackage{color,soul}
\begin{document}
\begin{quote}
\tt\
\ul{{\color{red}text}}.
\end{quote}
\end{document}
这段简单的代码会生成一个红色的带下划线的单词“text”。但是,如果你只是在单词“text”后面添加一个空格,或者在单词后面添加一个空格,例如
\documentclass{article}
\usepackage{color,soul}
\begin{document}
\begin{quote}
\tt\
\ul{{\color{red}text text}}.
\end{quote}
\end{document}
它会产生如下错误
! Package soul Error: Reconstruction failed.
See the soul package documentation for explanation.
Type H <return> for immediate help.
...
l.9 \ul{{\color{red}text text}}
.
有人能告诉我这是为什么吗?我怎样才能同时使用颜色和下划线,但又能控制下划线的颜色?
答案1
按作品分组\textcolor
:
\documentclass{article}
\usepackage{color,soul}
\begin{document}
\begin{quote}
\ttfamily
\ul{{\textcolor{red}{text}}}.
\end{quote}
\end{document}
下划线的颜色可以通过以下方式控制\setulcolor
:
\documentclass{article}
\usepackage{color,soul}
\begin{document}
\begin{quote}
\ttfamily
\setulcolor{cyan}
\ul{{\color{red}text}}.
\end{quote}
\end{document}
或者重写以将颜色命令移出 的\ul
参数:
\documentclass{article}
\usepackage{color,soul}
\begin{document}
\begin{quote}
\ttfamily
\setulcolor{cyan}%
\textcolor{red}{\ul{text}}.
\end{quote}
\end{document}