在某些情况下,阴影矩形的颜色无法恢复

在某些情况下,阴影矩形的颜色无法恢复

在下面的 MCE 中, atcolorbox配备了两个绘制为覆盖层的矩形。这些矩形的颜色应该与 的底部颜色相同tcolorbox

它与蓝色等颜色配合得很好,但与青色配合不好:为什么?

\documentclass{article}
\usepackage{tcolorbox}

\tcbuselibrary{skins}

\NewTColorBox{mybox}{ !O{blue} }
{
  enhanced,
  height=.75in,
  size=minimal,
  interior style={
    top color=black,
    bottom color=#1
  },
  overlay={
    \fill[#1]
    (frame.south west) rectangle +( .5in,-5)
    (frame.south east) rectangle +(-.5in,-5);
  }
}

\begin{document}

\begin{mybox}
\end{mybox}

\vspace*{5cm}

\begin{mybox}[cyan]
\end{mybox}

\end{document}

在此处输入图片描述

答案1

显然,颜色cyan定义为 CMYK 颜色。但是,为了生成渐变,颜色被转换为 RGB 模式(另请参阅这个答案关于渐变和 CMYK 模式)。转换为 RGB 模式会导致某些颜色出现明显差异,尤其是青色。

您可以通过xcolor明确告诉包仅使用 RGB 模式来解决此问题:

\documentclass{article}
\usepackage[rgb]{xcolor}
\usepackage{tcolorbox}

\tcbuselibrary{skins}

\NewTColorBox{mybox}{ !O{blue} }
{
  enhanced,
  height=.75in,
  size=minimal,
  interior style={
    top color=black,
    bottom color=#1
  },
  overlay={
    \fill[#1]
    (frame.south west) rectangle +( .5in,-5)
    (frame.south east) rectangle +(-.5in,-5);
  }
}

\begin{document}

\begin{mybox}
\end{mybox}

\vspace*{5cm}

\begin{mybox}[cyan]
\end{mybox}

\end{document}

在此处输入图片描述

相关内容