Вертикальное выравнивание встроенных меток в pgfgantt

Вертикальное выравнивание встроенных меток в pgfgantt

Похоже, это pgfganttвертикальное выравнивание inlineнадписи с автоматическим учетом пространства для выносных элементов:

\documentclass{article}
\usepackage{pgfgantt}

\begin{document}

\begin{ganttchart}[
    inline,
]{1}{4}
\ganttbar{XX}{2}{3}
\end{ganttchart}

\end{document}

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

То же самое можно увидеть в примерах в pgfganttруководстве . Как заставить его вертикально центрировать метки, если нет нижних выносных элементов? Я добился этого, установив bar inline label node/.append style={text depth=.5ex}, но я не хочу вручную каждый раз задавать магическое число.

решение1

Чтобы удалить \strutавтоматически вставленный в строку текст метки, используйте

\ganttset{bar label text=#1}

Чтобы удалить все \strutавтоматически вставленные в похожие области, используйте

\documentclass{article}
\usepackage{pgfgantt}
\usepackage{xpatch}

\ganttset{
  title label text=#1,
  bar label text=#1,
  group label text=#1,
  milestone label text=#1,
}

\makeatletter
\xpatchcmd\@newganttchartelement@definekeys
  {\strut}
  {}
  {}{\fail}
\makeatother


\begin{document}

\begin{ganttchart}[inline]{1}{4}
  \ganttbar{XX}{2}{3}
\end{ganttchart}

\end{document}

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

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