tikz 节点的自定义阴影图案

tikz 节点的自定义阴影图案

我正在寻找一种不同于“通常”方式的节点着色方法

\documentclass{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\node[top color=red, bottom color=green] {};
\end{tikzpicture}
\end{document}

在此示例中,存在渐变,即中间颜色与实际顶部和底部颜色不同。是否可以更改它,即在没有任何不同中间颜色的情况下对颜色进行严格分离(顶部=红色,底部=绿色)或更改渐变的属性?

答案1

像这样?

\documentclass[border=2mm]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\node[draw,
    append after command={
        \pgfextra
            \fill[green] (\tikzlastnode.south west) rectangle (\tikzlastnode.east);
            \fill[red] (\tikzlastnode.north west) rectangle (\tikzlastnode.east);
    \endpgfextra
    }] {A};
\end{tikzpicture}
\end{document}

在此处输入图片描述

更新

或者更简单的选择path picture

\documentclass[border=2mm]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\begin{tikzpicture}
\node[draw, fill=red,
        path picture={\fill[green] (path picture bounding box.west) rectangle (path picture bounding box.south east);}] {A};
\end{tikzpicture}

\end{document}

相关内容