Tikz:使用不透明度进行填充,但不改变绘制(线条)

Tikz:使用不透明度进行填充,但不改变绘制(线条)

当我在 tikzpicture 中使用 tikz 键opacity绘制多边形时,它适用于绘制的填充以及绘制的线条。

我希望这样实现:线条不受键的影响opacity,这样它们的行为就像已经改变了一样opacity=1

(我现在所做的是使用 重新绘制多边形fill=none,但这只是解决问题的一个不完善的解决方案)。

答案1

fill opacity您可以单独指定draw opacity。在下面的第一个例子中,我使用了opacity,在第二个例子中,我使用了,fill opacity这将仅影响fill而不是draw

在此处输入图片描述

笔记:

  • 正如 Martin Scharrer 所指出的:指定\opacity=<x>会影响filldraw因此text相当于说fill opacity=<X>, draw opacity=<X>, text opacity=<X>
  • fill opacity不仅适用于填充,还适用于文本。要覆盖此行为,您可以单独设置text opacity仅适用于文本标签的。因此,应用text opacity=1以确保不透明度不适用于文本。

代码:

\documentclass[border=3pt]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
    \draw [ultra thick, draw=black, fill=yellow, opacity=0.2]
       (0,0) -- (0,1) -- (1,1) -- cycle;
\end{tikzpicture}
\begin{tikzpicture}
    \draw [ultra thick, draw=black, fill=yellow, fill opacity=0.2]
       (0,0) -- (0,1) -- (1,1) -- cycle;
\end{tikzpicture}
\end{document}

相关内容