вертикальное выравнивание текста в tabularray с узлом tikz внутри

вертикальное выравнивание текста в tabularray с узлом tikz внутри

Я бы хотел, чтобы текст в ячейке был вертикально по центру, но оставался внизу. rowspec, похоже, не вступил в силу. Должно mбыть вертикально по центру.

\documentclass{standalone}
\usepackage{tabularray}
\usepackage{tikz}
\usepackage{color}
\begin{document}
\tiny\begin{tblr}{
  vspan=even, hspan=minimal,
  vspan=even, hspan=minimal,
  hline{1-Z}={black},
  row{odd} = {gray!5}, 
  colspec={Q[c] Q[l] Q[c] Q[l]},
  rowspec={Q[m] Q[m]},
  rowsep=1pt,
  colsep=1pt,
  row{1}={cmd=\textbf},
}
  Offset & Name  & Size & Value \\
  0      & AAAA & 1 &
\tikz \node[align=left] {
  0x00 – BBBB\\
0x01 – CCCC\\
0x02 – DDDD\\
0x03 – EEEE\\
0x04 – FFFF};
  \\
\end{tblr}
\end{document}

Выход: введите описание изображения здесь

решение1

Q[c, m]для установки выравнивания текста.

Для настройки узла TikZ используйте , baseline=(current bounding box.center)чтобы выровнять его по центру.

введите описание изображения здесь

\documentclass{standalone}
\usepackage{tabularray}
\UseTblrLibrary{booktabs} %added here for better lines.
\usepackage{tikz}
\usepackage{color}

\begin{document}
\tiny
\begin{tblr}{
  vspan=even, hspan=minimal,
  hlines, vlines,
  row{odd} = {bg=gray!5},
  colspec={Q[c, m] Q[l, m] Q[c, m] Q[l, m]},
  rowsep=1pt,
  colsep=1pt,
  row{1}={font=\bfseries},
}
  Offset & Name  & Size & Value \\
  0      & AAAA  & 1    &
  \tikz[baseline=(current bounding box.center)]{
    \node[align=left, anchor=center] {
      0x00 – BBBB\\
      0x01 – CCCC\\
      0x02 – DDDD\\
      0x03 – EEEE\\
      0x04 – FFFF
    };
  }\\
\end{tblr}
\end{document}

решение2

Использование узла tikz кажется неоправданно сложным. Вместо этого можно использовать многострочную ячейку:

\documentclass{standalone}
\usepackage{tabularray}
\usepackage{tikz}
\usepackage{color}
\begin{document}
\begin{tblr}{
  vspan=even, hspan=minimal,
  vspan=even, hspan=minimal,
  hline{1-Z}={black},
  row{odd} = {gray!5}, 
  colspec={Q[c] Q[l] Q[c] Q[l]},
  rowspec={Q[m] Q[m]},
  rowsep=1pt,
  colsep=1pt,
  row{1}={cmd=\textbf},
}
  Offset & Name  & Size & Value \\
  0      & AAAA & 1 &
 {0x00 – BBBB\\
  0x01 – CCCC\\
  0x02 – DDDD\\
  0x03 – EEEE\\
  0x04 – FFFF}\\
\end{tblr}
\end{document}

введите описание изображения здесь

Связанный контент