\newcommand、par 和 textcolor

\newcommand、par 和 textcolor

好的。我读过\newcommand 和 \newcommand* 之间有什么区别?。然而,当我尝试使用

\definecolor{cincinnati-red}{RGB}{190,0,0}

\newcommand{\authorA}[1]{\textcolor{cincinnati-red}{[A: #1]}}

形式如下:

\authorA{
    Hi Guys:

    (more stuff)
}

我得到了错误

Runaway argument?
{[A:  Hi Guys: 
! Paragraph ended before \@textcolor was complete.
<to be read again> 
                   \par 
l.166 }

我如何设置这个宏,以便文本颜色扩展到整个参数范围?(只需将 \textcolor 更改为 \color,如阅读时所建议的那样在 \textcolor 中写段落,对我不起作用。(颜色没有显示。)

答案1

此处的正确命令是\coloras \textcoloris not long。那么命令的语法将是

\newcommand{\authorA}[1]{{\color{cincinnati-red}[A: #1]}}

并非如此,\color并且它适用的文本被括在额外的括号组内,因此颜色不会影响命令后面的文本。

示例输出

\documentclass{article}

\usepackage{xcolor}

\definecolor{cincinnati-red}{RGB}{190,0,0}

\newcommand{\authorA}[1]{{\color{cincinnati-red}[A: #1]}}

\begin{document}

Text before

\authorA{
    Hi Guys:

    (more stuff)
}

Text after
\end{document}

相关内容