
Я хочу смоделировать градиенты в 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}
Однако вместо красного и синего мне нужен триплет цветов RGB, как это принято в HTML. Согласно 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}
отредактированное изображение