Question
Once I re-size the text of my timing labels, the midpoint of the label seems to shift as indicated by the arrows from the code/image below. It aligns to the bottom of the text instead of the middle. Is there a way to center the tikz-timing label vertically?
Related question: LaTeX tikz-timing – adjust fontsize independently for each row label
\vspace
does not seem like a good option
Code
\documentclass[border=4pt]{standalone}
\usepackage{tikz-timing}
\newcommand{\arr}[1]{#1 $\Longrightarrow$}
%
\begin{document}
\begin{tikztimingtable}
\arr & 4D{normal} \\
\arr{\tiny\color{red}} & 4D{tiny} \\
\arr{\scriptsize\color{orange}} & 4D{script} \\
\arr{\footnotesize\color{yellow}} & 4D{footnote} \\
\arr{\small\color{green}} & 4D{small} \\
\arr{\normalsize\color{blue}} & 4D{normal} \\
\arr{\large\color{purple}} & 4D{large} \\
\extracode
\tablegrid
\end{tikztimingtable}
\end{document}
Resulting Image
Why would you want to move a label around?
When using tikz-timing along with PGF syntax you might get yourself into a tight-spot where you want to move around tikz-timing labels (which are by default anchored to the bottom of the bounding box).
In the example below, vertical lines, nodes, and line labels are automatically expanded using a \foreach
loop all relatively referenced to make expanding the timing diagram easier. In addition, I am taking advantage of the tikz-timing macros inside of my "analog" waveforms as well; see analog_sig1 where I wanted to illustrate an unknown analog output.
I would want to move the "critical_point" label up a little so that I could align to the staggered t0…t15 line labels/nodes.
Problem Illustration
Below is an example waveform I put together with "debug" grids, markings, and vertical lines.
Solution
{\tiny\color{blue}\raisebox{1mm}{critical\_point$\Longrightarrow$}} &
Best Answer
As you only want to change the label of one row I added a
timing/name <row>/.try
style to thetiming/name
style. The.try
handler makes it possible to not having to define atiming/name <row>
style for every possible<row>
.I have used these
name <row>
styles twice:timing/name 1
style sets up the label node so that the baseline is on the same height as the middle of the distance of a D slope.The
.6pt
has been found empirical and covers the additional height introduced by the actual D lines.timing/name 2
style makes use of theappend after command
key to actually draw that arrow with TikZ.Code
Output