relleno + patrón en diferentes caminos versus en el mismo camino

relleno + patrón en diferentes caminos versus en el mismo camino

¿Por qué el siguiente manuscrito de LaTeX

\documentclass[tikz,convert]{standalone}
\usetikzlibrary{patterns}
\begin{document}
\begin{tikzpicture}[color=black]
  \path[fill=red] (0,0) rectangle (1,1);
  \path[pattern=bricks] (0,0) rectangle (1,1);
\end{tikzpicture}
\end{document}

produce ladrillos rojos:

ladrillos rojos

mientras que fusionar las dos \pathlíneas en una, de la siguiente manera:

\path[fill=red, pattern=bricks] (0,0) rectangle (1,1);

produce ladrillos blancos:

Ladrillos blancos

?

O el interior de los ladrillos en el patrón de ladrillos es transparente o no lo es. Si es transparente, ¿por qué no se ve el relleno rojo en el segundo caso? Si no es transparente, ¿por qué se ve el relleno rojo en el primer caso?

Respuesta1

En el primer caso tienes dos \paths diferentes, por lo que primero se dibuja el rectángulo rojo y luego patternse dibuja encima. Como patternsolo dibuja las líneas negras (no llena las partes intermedias), ves el rojo debajo.

En el segundo caso, porque agregas el patterndespués de fillen elmismo \path, elpattern reemplazael fill. El manual dice

El patrón funciona como un color de relleno. En particular, establecer un nuevo color de relleno llenará el trazado con un color sólido una vez más.

entonces con fill=red, pattern=bricksthe fillse ignora y solo patternse dibuja the. De manera similar, si intercambias la orden ( pattern=bricks,fill=red), solo fillse sortea el.

Si desea hacer ambas cosas en una ruta, puede usar a preactiono a postaction.

\documentclass[tikz]{standalone}
\usetikzlibrary{patterns}
\begin{document}
\begin{tikzpicture}[color=black]
  \path[fill=red,postaction={pattern=bricks}] (0,0) rectangle (1,1);

  \path[preaction={fill=blue},pattern=bricks] (1,0) rectangle (2,1);
\end{tikzpicture}
\end{document}

información relacionada