我怎样才能使智能图的箭头采用其来源框的颜色,而不是其来源框的颜色?

我怎样才能使智能图的箭头采用其来源框的颜色,而不是其来源框的颜色?

我想smartdiagram将前一个框的颜色也用于箭头,而不是它指向的框。因此,在这张图中:

在此处输入图片描述

我希望绿色箭头变为红色,蓝色箭头变为绿色,橙色箭头变为蓝色,红色箭头变为橙色。

我怎样才能实现这一点?这是我的 MWE:

\documentclass[border=3mm]{standalone}

\usepackage{smartdiagram}

\tikzset{
    every shadow/.style={
        fill=none,
        shadow xshift=0pt,
        shadow yshift=0pt}
}

\tikzset{module/.append style={top color=\col,bottom color=\col}}

\smartdiagramset{%
    module shape=rectangle,
    text color=white,
    border color=none,
}

\smartdiagramset{set color list={red,green,blue,orange}}

\begin{document}
\sffamily
\smartdiagram[flow diagram:horizontal]{elem1,elem2,elem3,elem4}
\end{document}

答案1

https://tex.stackexchange.com/a/126481/197451

在此处输入图片描述

\documentclass[border=3mm]{standalone}

\usepackage{smartdiagram}

\tikzset{
    every shadow/.style={
        fill=none,
        shadow xshift=0pt,
        shadow yshift=0pt}
}

\tikzset{module/.append style={top color=\col,bottom color=\col}}

\smartdiagramset{%
    module shape=rectangle,
    text color=white,
    border color=none,
}
\makeatletter
\smartdiagramset{
    flip arrow colors/.style={
        /tikz/diagram arrow type/.prefix code={%
            \edef\col{\@nameuse{color@\xi}}%
        }
    }
}
\smartdiagramset{flip arrow colors}

\begin{document}
\sffamily
\smartdiagram[flow diagram:horizontal]{elem1,elem2,elem3,elem4}
\end{document}

相关内容