我想在 TikZ 中为覆盖颜色渐变的纸张建模渐变。这些渐变相当特殊,因此不能仅依靠 TikZ 阴影。因此,我想使用连续的 TikZ 阴影矩形来建模渐变,如下所示:
\documentclass{article}
\usepackage{graphicx}
\usepackage{xcolor}
\usepackage{tikz}
\begin{document}
\begin{figure}[!h]
\begin{tikzpicture}\shade[left color=red,right color=gray]
(1.211,0.000) rectangle (0.211,1.000);
\end{tikzpicture}
\end{figure}
\end{document}
但是,我需要的是 HTML 中常见的 RGB 三色,而不是红色和蓝色。根据xcolor
手册 2.3.3,我认为
\shade[left color=rgb,300:red,51;green,41;blue,5,right color=rgb,300:red,50;green,38;blue,0]
可能会起作用,但我得到! Package xcolor Error: Undefined color `rgb'.
预生成我需要的所有颜色是可行的,但确实很尴尬。 是否可以xcolor
在 TikZ 着色中使用直接颜色? 我遇到的所有示例要么使用 definecolor(甚至对于 HTML 颜色)要么使用命名颜色。
任何指点都值得赞赏。
答案1
为这些重复命令创建快捷方式并不困难。您可以创建并重新创建相同的颜色,这是一个快速模型;您可以获取您尝试将 rgb 语法推送到的设置,然后读取分配的参数并将其放置在临时颜色名称中。然后将其用于该键的设置。
我不知道您会多久使用它以及使用它做什么,所以我不保证。
编辑
\documentclass[tikz]{standalone}
\tikzset{xcolor/.code args={#1=#2}{
\definecolor{mytemp}{rgb}{#2}
\tikzset{#1=mytemp}
}
}
\begin{document}
\begin{tikzpicture}
\shade[xcolor={left color={0.5,0.7,0.1}},xcolor={right color={0.7,0.4,0.8}}]
(1.211,0.000) rectangle (0.211,1.000);
\shade[xcolor={right color={0.5,0.7,0.1}},xcolor={left color={0.7,0.4,0.8}}]
(0.211,0.000) rectangle (-1.211,1.000);
\end{tikzpicture}
\end{document}
编辑后的图像