Relleno "estrecho" de texto de varias líneas en un nodo sin afectar el espacio entre líneas

Relleno "estrecho" de texto de varias líneas en un nodo sin afectar el espacio entre líneas

Este es un seguimiento deRelleno "estrecho" de texto de varias líneas en el nodo, en el que no fui lo suficientemente claro acerca de querer que el espacio entre líneas no se vea afectado.

En resumen, necesito superponer texto de varias líneas en una curva. Para asegurarme de que el texto esté en la parte superior de la curva, coloreo el nodo que contiene el texto. Dado que hay varias líneas que difieren en sus longitudes, la etiqueta parece extraña cuando se colorea todo el nodo.soluciónresolvió este problema, pero no aborda mi necesidad (no claramente indicada) de que el interlineado no se vea afectado (para mantener la coherencia con otras etiquetas de varias líneas en mi figura).

Considere este MWE:

\documentclass[class=minimal]{standalone}

\usepackage{tikz}
\usetikzlibrary{calc}
\usetikzlibrary{positioning}

\begin{document}
\begin{tikzpicture}
  \draw[-] (-1,-0.5) .. controls (-1,1) and (1,0) .. 
    node[above left=-20pt and -11pt,align=center] 
    {\colorbox{yellow}{short line}\\\colorbox{yellow}{much longer line}} (1,1);
  \draw[-] (-0.105,0.576)  
    node[red,above left=-20pt and -11pt,align=center] 
    {short line\\much longer line};
\end{tikzpicture}
\end{document}

lo que da

ingrese la descripción de la imagen aquí

El texto rojo tiene el interlineado habitual. El texto negro con el relleno "apretado" deseado tiene un interlineado ligeramente mayor.

¿Cómo puedo tener un relleno "apretado" de texto de varias líneas en un nodo sin cambiar el interlineado?

Respuesta1

ingrese la descripción de la imagen aquí

Quise decir que podrías configurar fboxep en 0 (que aquí es 2), pero supongo que prefieres 3.

\documentclass[class=minimal,border=0pt]{standalone}

\usepackage{tikz}
\usetikzlibrary{calc}
\usetikzlibrary{positioning}
\newcommand\ya[1]{\colorbox{yellow}{#1}}
\newcommand\yb[1]{{\fboxsep=0pt\colorbox{yellow}{#1}}}
\newcommand\yc[1]{\vphantom{#1}\smash{\colorbox{yellow}{#1}}}
\begin{document}
\begin{tikzpicture}
  \draw[-] (-1,-0.5) .. controls (-1,1) and (1,0) .. 
    node[above left=-20pt and -11pt,align=center] 
    {\ya{short line1}\\\ya{much longer line}} (1,1);
\end{tikzpicture}
\begin{tikzpicture}
  \draw[-] (-1,-0.5) .. controls (-1,1) and (1,0) .. 
    node[above left=-20pt and -11pt,align=center] 
    {\yb{short line2}\\\yb{much longer line}} (1,1);
\end{tikzpicture}
\begin{tikzpicture}
  \draw[-] (-1,-0.5) .. controls (-1,1) and (1,0) .. 
    node[above left=-20pt and -11pt,align=center] 
    {\yc{short line3}\\\yc{much longer line}} (1,1);
\end{tikzpicture}
\begin{tikzpicture}
  \draw[-] (-1,-0.5) .. controls (-1,1) and (1,0) .. 
    node[above left=-20pt and -11pt,align=center] 
    {short line4\llap{\rule[-.5pt]{25cm}{.5pt}}\\%
     much longer line\llap{\rule[-.5pt]{25cm}{.5pt}}} (1,1);
\end{tikzpicture}
\end{document}

información relacionada