
Quiero dibujar una TikZ
tabla con dos columnas, la columna de la izquierda contiene letras de la A a la Z y la columna de la derecha las correspondientes dancer
. El código que uso es:
\documentclass[a4paper, 12pt,landscape]{article}
\usepackage[vmargin={1cm,1cm},hmargin={8mm,1cm}]{geometry}
\usepackage{lmodern}
\usepackage{tikz}
\DeclareFontFamily{OT1}{dancers}{}
\DeclareFontShape{OT1}{dancers}{m}{n}{<-> dancers}{}
\newcommand{\dancers}[1]{%
\usefont{OT1}{dancers}{m}{n}\spaceskip=5pt
#1}
\pagestyle{empty}
\begin{document}
\begin{tikzpicture}[
box/.style={draw, minimum size=7mm}]
\foreach \i [count=\ni from 0] in {A,B,...,Z}{
\node[box] at (0,-\ni*7mm) {\i};
\node[box] at (7mm,-\ni*7mm) {\dancers{\i}};
}
\end{tikzpicture}
\end{document}
y un detalle del resultado es:
Como puedes ver la alineación no es muy bonita. ¿Cómo puedo hacerlo mejor? Me gustaría mantener el tamaño del nodo, pero con el correspondiente dancer
mejor centrado en su interior. ¿Alguna idea?
Respuesta1
Aplicar un simple \smash{\raisebox{-8pt}{}}
al \dancers{}
.
Sin \smash
, puede reducir cada glifo hasta 12 puntos, antes de que la extensión vertical se salga de la parte inferior del espacio del glifo y arruine la apariencia del gráfico.
Parece inusual que los glifos se encuentren tan arriba de la línea de base (tal vez estén saltando mientras bailan ;^)
\documentclass[a4paper, 12pt,landscape]{article}
\usepackage[vmargin={1cm,1cm},hmargin={8mm,1cm}]{geometry}
\usepackage{lmodern}
\usepackage{tikz}
\DeclareFontFamily{OT1}{dancers}{}
\DeclareFontShape{OT1}{dancers}{m}{n}{<-> dancers}{}
\newcommand{\dancers}[1]{%
\usefont{OT1}{dancers}{m}{n}\spaceskip=5pt
#1}
\pagestyle{empty}
\begin{document}
\begin{tikzpicture}[
box/.style={draw, minimum size=7mm}]
\foreach \i [count=\ni from 0] in {A,B,...,Z}{
\node[box] at (0,-\ni*7mm) {\i};
\node[box] at (7mm,-\ni*7mm) {\smash{\raisebox{-8pt}{\dancers{\i}}}};
}
\end{tikzpicture}
\end{document}