我的目标是用不同的颜色画一条线而不是开始一条新线,因此这会产生一条线并且正在工作:
\documentclass[tikz=true,border=0pt]{standalone}
\begin{document}%
\begin{tikzpicture}[x=1mm, y=1mm]%
\draw [line width=5mm, color=green] (0,0) -- +(5,0) {};
\draw [line width=5mm, color=red] (5,0) -- +(5,0) {};
\draw [line width=5mm, color=green] (10,0) -- +(5,0) {};
\draw [line width=5mm, color=red] (15,0) -- +(5,0) {};
\end{tikzpicture}%
\end{document}
最好不要另起一行...就像这样:
...
\draw [line width=5mm, color=green] (0,0) -- +(5,0) -- [color=red] - +(5,0) -- [color=blue] - +(5,0) {};
...
找不到办法。只能让事情稍微缓和一点。
答案1
您可以postaction
使用dash pattern
。
\documentclass[tikz=true,border=0pt]{standalone}
\begin{document}%
\begin{tikzpicture}[x=1mm, y=1mm]%
\draw [line width=5mm, color=red,postaction={draw=green,dash pattern=on
5mm off 5mm}] (0,0) -- +(20,0) {};
\end{tikzpicture}%
\end{document}
末端的白色间隙来自于使用 时边界框也正确的要求line cap=rect
。如果路径不仅仅是一条水平线,则需要更大的边界框,否则部分会被剪掉。