我正在尝试使用 来包含一些代码\usepackage{listings}
。但是默认外观不太漂亮,所以我想对其进行一些自定义。我读过一些关于更改代码布局的其他帖子,所以我尝试了以下方法:
\usepackage{listings}
\usepackage[rgb]{xcolor}
\lstset{%
language=C++,%
backgroundcolor=\color{yellow!20},% sets backgroundcolor
basicstyle=%
\scriptsize \color{black},% basic font setting
commentstyle=%
\color{OliveGreen}
}
但是 OliveGreen 是未定义的。绿色一点也不好看,所以我想知道如何混合/创建自己的颜色?或者也许使用其他包含更多标准颜色的包。
答案1
颜色OliveGreen
在中定义dvipsnam.def
,因此您可以使用
\usepackage[rgb,dvipsnames]{xcolor}
或者,您可以通过以下方式定义它
\definecolor{OliveGreen}{rgb}{0,0.6,0}
在您的文档序言中。在这两种情况下,您都可以在需要的地方按名称使用颜色。
使用此dvipsnames
选项,OliveGreen
颜色在 CMYK 模型中定义为
\definecolor{OliveGreen}{cmyk}{0.64,0,0.95,0.40}
但同一个xcolor
包会将其转换为rgb
上述规范。
这是我从以下测试文档中获得的信息:
\documentclass{article}
\usepackage[rgb,dvipsnames]{xcolor}
\definecolor{OliveGreenCMYK}{cmyk}{0.64,0,0.95,0.40}
\definecolor{OliveGreenRGB}{rgb}{0,0.6,0}
\begin{document}
\colorbox{OliveGreenCMYK}{\rule{0pt}{1cm}\hspace{1cm}}\quad
\colorbox{OliveGreenRGB}{\rule{0pt}{1cm}\hspace{1cm}}\quad
\colorbox{OliveGreen}{\rule{0pt}{1cm}\hspace{1cm}}
\end{document}
这表明三种颜色调用方式的结果相同。然而,根据打印机和打印机驱动程序的不同,最终的打印输出可能会有所不同。