Определить цвет текста для всех узлов tikz определенного типа

Определить цвет текста для всех узлов tikz определенного типа

Я хочу, чтобы определенный тип узла в tikz имел определенный цвет текста. В настоящее время я определил макрос для цвета текста. Но мне нужно продолжать использовать этот макрос в каждом узле.

Разве нет лучшего решения? Так же, как мы определяем цвет фона для узла, мы можем также определить цвет текста в \tikzstyleоператоре?

Вот MWE:

\documentclass{article}

\usepackage[svgnames]{xcolor}                                                                                                         
\usepackage{tikz}
\usetikzlibrary{shapes,arrows}
\newcommand{\whttxt}[1]{\textbf{\textcolor{LemonChiffon}{#1}}}
\begin{document}
\pagestyle{empty}

% Define block styles
\tikzstyle{block} = [rectangle, draw, fill=black, text width=5em, text centered, rounded corners, minimum height=4em]

\begin{tikzpicture}[node distance=1in]
  \node [block] (nodea) {\whttxt{Node A}};
  \node [block, below of=nodea] (nodeb) {\whttxt{Node B}};
\end{tikzpicture}

\end{document}

решение1

Вы можете использовать text=LemonChiffonoption для указания цвета текста вместе с font=option для применения \bfseries. Ниже я заменил \whttxtмакрос на whttxtoption для применения этих двух:

введите описание изображения здесь

Примечания:

Код:

\documentclass{article}

\usepackage[svgnames]{xcolor}                                                                                                         
\usepackage{tikz}
\usetikzlibrary{shapes,arrows}
%\newcommand{\whttxt}[1]{\textbf{\textcolor{LemonChiffon}{#1}}}

\begin{document}
\pagestyle{empty}

% Define block styles
%\tikzstyle{block} = [rectangle, draw, fill=black, text width=5em, text centered, rounded corners, minimum height=4em]
\tikzset{block/.style={rectangle, draw, fill=black, text width=5em, text centered, rounded corners, minimum height=4em}}
\tikzset{whttxt/.style={text=LemonChiffon, font=\bfseries}}

\begin{tikzpicture}[node distance=1in]
  \node [block, whttxt] (nodea) {Node A};
  \node [block, below of=nodea, whttxt] (nodeb) {Node B};
\end{tikzpicture}

\end{document}

Связанный контент