回答以下问题另一个问题,我正在使用 Milsymb 库并更改前景色。
\documentclass{standalone}
\usepackage{tikz}
\usepackage{forest}
\usepackage{milsymb}
\makeatletter
\protected\def\tikz@fig@main#1{%
\expandafter\gdef\csname labeltextof@\tikz@fig@name\endcsname{#1}%
\iftikz@node@is@pic%
\tikz@node@is@picfalse%
\tikz@subpicture@handle{#1}%
\else%
\tikz@@fig@main#1\egroup%
\fi}
\makeatother
\newcommand\labeltextof[1]{\csname labeltextof@#1\endcsname}
\newcommand{\aftercolorof}[2]{% #1 is the color, #2 us the node
\path (#2.center) node[#1] (#2-2) {\labeltextof{#2}};
}
\begin{document}
\begin{tikzpicture}
\node (nA) {\tikz{\MilLand[faction=friendly,monochrome,echelon=division,main=armoured]{}}};
\aftercolorof{red}{nA}
\end{tikzpicture}
\end{document}
这会产生红色的前景颜色。
我还如何更改节点背景颜色(即上面的浅灰色,而不是白色图像背景)?
答案1
您可以使用fill=...
密钥(请注意,不建议嵌套 tikz 图片,并且可能会产生有趣的副作用。):
\documentclass{standalone}
\usepackage{tikz}
\usepackage{forest}
\usepackage{milsymb}
\begin{document}
\begin{tikzpicture}
\node (nA) {\tikz{\pgfsetstrokecolor{red}\MilLand[faction=friendly,monochrome,echelon=division,main=armoured,red,fill=green]{}}};
\end{tikzpicture}
\end{document}