TikZ - ¿Es posible un desvanecimiento horizontal completo y progresivo?

TikZ - ¿Es posible un desvanecimiento horizontal completo y progresivo?

Me gustaría atenuar algo de texto, a la izquierda y a la derecha. Quiero que el desvanecimiento sea visualmente ambos:

  • progresivo
  • completo (es decir: cuando termina el desvanecimiento, el texto se vuelve invisible)

No encontré ningún ejemplo de eso.

Ilustraré lo que probé con 5 ejemplos. Mi desvanecimiento es de derecha a izquierda y termina alrededor del tercio izquierdo del texto.

En los textos A y B, utilizo un desvanecimiento blanco. En los textos C, D, E, utilizo un desvanecimiento azul.

Probé 2 estrategias:

  1. Usando tikzfading (ejemplo A). Pero mi texto no se vuelve completamente invisible. El desvanecimiento no es "completo".
  2. Dibujando múltiples rayas verticales diminutas. No me gusta el método, pero el resultado es más el que esperaba. Pero cuando imprimo el documento, o cuando hago zoom, puedo ver las rayas :-(

¿Cómo puedo lograr un desvanecimiento completo como en B (o C), pero sin las rayas?

\documentclass[tikz]{standalone}
\usetikzlibrary{fadings}
\tikzfading[name=fade example,left color=transparent!0,right color=transparent!100]
\begin{document}
{
    \begin{tikzpicture}           
    \draw((2,4) node[fill=white!80, text=black] {AAAAAAAAAAAAAAAAAAAA} ;
    \filldraw [draw=none, white, path fading=fade example] (1,3.5) rectangle (3,4.5);
    \end{tikzpicture}   
    
    \begin{tikzpicture}
    \draw((1,0.5) node[fill=white!80, text=black] {BBBBBBBBBBBBBBBBBBBBB} ;
    \foreach \x in {0,0.01,...,2.0}
    \filldraw [draw=none, white, opacity=\x/2.0] (2.0 - \x, 0) rectangle (1.96-\x, 1);
    \end{tikzpicture}
    
    \begin{tikzpicture}
    \draw((1,0.5) node[fill=white!80, text=black] {CCCCCCCCCCCCCCCCCCCCCC} ;
    \foreach \x in {0,0.01,...,2.0}
    \filldraw [draw=none, blue, opacity=\x/2.0] (2.0 - \x, 0) rectangle (1.96-\x, 1);
    \end{tikzpicture}   
    
    \begin{tikzpicture}
    \draw((1,0.5) node[fill=white!80, text=black] {DDDDDDDDDDDDDDDDDDDDDDD} ;
    \foreach \x in {0,0.001,...,2.0}
    \filldraw [draw=none, blue, opacity=\x/2.0] (1.999 - \x, 0) rectangle (2.0-\x, 1);
    \end{tikzpicture}
    
    \begin{tikzpicture}
    \draw((1,0.5) node[fill=white!80, text=black] {EEEEEEEEEEEEEEEEEEEEEEEE} ;
    \foreach \x in {0,0.001,...,2.0}
    \filldraw [draw=none, blue, opacity=\x/2.0] (1.999 - \x, 0) rectangle (2.001-\x, 1);
    \end{tikzpicture}

}
\end{document}

5 ejemplos

zoom B

Respuesta1

el desvanecimientohacevolverse invisible, pero sólo al final. El problema es que el desvanecimiento no es lo suficientemente severo cerca del extremo descolorido. Puede configurar middle color=transparent!50, que producirá su imagen original:

ingrese la descripción de la imagen aquí

El ajuste middle color=transparent!10se desvanece del 0% al 10% en la primera mitad y del 10% al 100% en la segunda mitad, lo que produce

ingrese la descripción de la imagen aquí

Si configuras middle color=transparent!2obtienes

ingrese la descripción de la imagen aquí

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{fadings}
\tikzfading[name=fade example,left color=transparent!0,right color=transparent!100,middle color=transparent!2]

\begin{document}
    \begin{tikzpicture}           
    \draw((2,4) node[fill=white, text=black] {AAAAAAAAAAAAAAAAAAAA} ;
    \filldraw [draw=none, white, path fading=fade example] (1,3.5) rectangle (3,4.5);
    \end{tikzpicture}  
\end{document}

Respuesta2

Aquí hay una solución:

\documentclass[tikz]{standalone}
\usetikzlibrary{fadings}
\tikzfading[name=fade example,left color=transparent!0,right color=transparent!0,middle color=transparent!100]
\begin{document}

\begin{tikzpicture}           
  \node[draw,fill=white!80,text=black] (my text) {AAAAAAAAA} ;
  \filldraw [draw=none, white, path fading=fade example] (my text.south west) rectangle (my text.north east);
\end{tikzpicture}   

\end{document}

Nota: el desvanecimiento escompleto(mira los bordes) pero el texto permanece visible porque no llega hasta los bordes.

ingrese la descripción de la imagen aquí

información relacionada