LaTeX 中的颜色定义 - xcolor.sty、svgnam.def 和 \definecolor

LaTeX 中的颜色定义 - xcolor.sty、svgnam.def 和 \definecolor

我正在寻找使用上述不同方法在 LaTeX 中定义新颜色的最佳方法。在 xcolor.sty 中,我有

\definecolorset{gray/rgb/hsb/cmyk}{}{}%
 {black,0/0,0,0/0,0,0/0,0,0,1;%
  darkgray,.25/.25,.25,.25/0,0,.25/0,0,0,.75;%
  gray,.5/.5,.5,.5/0,0,.5/0,0,0,.5;%
  lightgray,.75/.75,.75,.75/0,0,.75/0,0,0,.25;%
  white,1/1,1,1/0,0,1/0,0,0,0}

在 svgnam.def 中我有

\def\colornameprefix{XC@}
\preparecolorset{rgb}{}{}{%
AliceBlue,.94,.972,1;%
AntiqueWhite,.98,.92,.844;%
Aqua,0,1,1;%
\endinput

我想直接在文档中定义新颜色 LightBlue,但以下 R 代码不起作用。由于白色文本显示在应显示的位置,因此错误一定出在 LightBlue 的定义中:

\usepackage[usenames,dvipsnames,svgnames,table]{xcolor}
\definecolor{LightBlue}{RGB}{126,160,216}

temp<-read.table(text=paste("Action      Weight
                      1  Addition     1
                      2  Deletion     2
                      3  UpWeight     3 
                      4  DownWeight   4",sep=""),header=TRUE)

for(i in 1:nrow(temp)){
    if(nrow(temp)>0){
      temp[,1:ncol(temp)]<-"{\\cellcolor{LightBlue}\\textcolor{white}{  }}"
      temp[,2]<-paste0("{\\cellcolor{LightBlue}\\textcolor{white}{to test}}")
      temp$Action<-NULL
    }
  }

我的问题是:

  1. 我现在的定义有错误吗?
  2. 我是否应该直接在 svgnam.def 中定义 LightBlue 以避免转换为 xcolor.sty 中的四种不同的配色方案?
  3. {RGB} 是否使用从 0 到 255 的尺度,而 {rgb} 是否从 0 到 1?如果是这样,那么转换为 {rgb} 是否就像将每个 {RGB} 值除以 255 一样简单?

谢谢你!

答案1

为了解决这个问题,我重新安装了 xcolor 包,删除了 \usepackage 的额外调用,并且两者的组合似乎有效

相关内容