我正在尝试制作一个 cmyk 颜色的球体。在 rgb 中,球体如预期的那样很好地重叠。解决方案是使用 @Christian Feuersänger 的建议这里?
\documentclass{standalone}
\usepackage{xcolor,tikz}
\definecolor{greyR}{RGB}{102,102,102}
\definecolor{darkR}{RGB}{75,75,75}
\definecolor{darkC}{cmyk}{0,0,0,.80}
\definecolor{greyC}{cmyk}{0,0,0,.70}
% Define shading (RGB)
\pgfdeclareradialshading{sphereR}{\pgfpoint{-0.2cm}{0.35cm}}{%
color(0cm)=(white);
color(0.7cm)=(greyR);
color(0.85cm)=(darkR)
}
% Define shading (CMYK)
\pgfdeclareradialshading{sphereC}{\pgfpoint{-0.2cm}{0.35cm}}{%
color(0cm)=(white);
color(0.7cm)=(greyC);
color(0.85cm)=(darkC)
}
\newcommand*{\myBallR}[3]{\fill [shading=sphereR,darkR] (#1,#2) circle (1cm) node[black] {rgb};}
\newcommand*{\myBallC}[3]{\fill [shading=sphereC,darkC] (#1,#2) circle (1cm) node[black] {cmyk};}
\begin{document}
\begin{tikzpicture}
\draw [fill=darkR] node[black,above=-3pt] {\footnotesize rgb} (-2cm, 0cm) rectangle (2cm,2cm) ;
\draw [fill=darkC] node[black,below=-3pt] {\footnotesize cmyk} (-2cm,-2cm) rectangle (2cm,0cm);
\myBallR{.98}{.98};
\myBallR{.98}{-.98};
\myBallC{-.98}{.98};
\myBallC{-.98}{-.98};
\end{tikzpicture}
\end{document}
答案1
更新
自 3.1.3 版起,pgf
现在支持 CMYK(和灰度)阴影。无需使用,只需在加载前\usepackage{pgf-cmykshadings}
使用 即可。\usepackage[cmyk]{xcolor}
tikz
如您所知,pgf
仅支持 RGB 阴影。但现在可以使用新包输出 CMYK 和灰度阴影pgf-cmykshadings
。
pgf-cmykshadings
应该加载前 tikz
确保tikz
阴影设置允许在 CMYK 色彩空间中输出。
平均能量损失
此 MWE 遵循问题并显示 RGB 和 CMYK 领域。在现实世界的文档中,您可能希望通过加载选项而不更改颜色模型来强制所有地方的所有颜色为xcolor
CMYK cmyk
。
\documentclass{standalone}
\usepackage{pgf-cmykshadings}
\usepackage{tikz}
\definecolor{greyR}{RGB}{102,102,102}
\definecolor{darkR}{RGB}{75,75,75}
\definecolor{darkC}{cmyk}{0,0,0,.80}
\definecolor{greyC}{cmyk}{0,0,0,.70}
% Define shading (RGB)
\selectcolormodel{rgb} % select the RGB colour model to define an RGB shading
\pgfdeclareradialshading{sphereR}{\pgfpoint{-0.2cm}{0.35cm}}{%
color(0cm)=(white);
color(0.7cm)=(greyR);
color(0.85cm)=(darkR)
}
% Define shading (CMYK)
\selectcolormodel{cmyk} % select the CMYK colour model to define a CMYK shading
\pgfdeclareradialshading{sphereC}{\pgfpoint{-0.2cm}{0.35cm}}{%
color(0cm)=(white);
color(0.7cm)=(greyC);
color(0.85cm)=(darkC)
}
\selectcolormodel{natural} % return to the natural colour model so we can use both RGB and CMYK colours
\newcommand*{\myBallR}[3]{\fill [shading=sphereR,darkR] (#1,#2) circle (1cm) node[black] {rgb};}
\newcommand*{\myBallC}[3]{\fill [shading=sphereC,darkC] (#1,#2) circle (1cm) node[black] {cmyk};}
\begin{document}
\begin{tikzpicture}
\draw [fill=darkR] node[black,above=-3pt] {\footnotesize rgb} (-2cm, 0cm) rectangle (2cm,2cm) ;
\draw [fill=darkC] node[black,below=-3pt] {\footnotesize cmyk} (-2cm,-2cm) rectangle (2cm,0cm);
\myBallR{.98}{.98};
\myBallR{.98}{-.98};
\myBallC{-.98}{.98};
\myBallC{-.98}{-.98};
\node at (0,2.2cm) {\textcolor{cyan}{C} \textcolor{magenta}{M}
\textcolor{yellow}{Y} K};
\end{tikzpicture}
\end{document}
复合输出
请注意不匹配的灰色阴影。
分离
请注意,CMYK 球体和底部 CMYK 背景仅出现在黑色板上,但 RGB 球体和顶部 RGB 背景分离到所有四个板上。
下面的分离是使用 GhostScripttiffsep
设备进行的。