Изменить порядок комментариев и смерти, генеалогическое древо

Изменить порядок комментариев и смерти, генеалогическое древо

С пакетом genealogytree сначала отображается рождение, затем крещение, затем дата смерти и, наконец, комментарий. Например:

Пример

Я хотел бы написать комментарий непосредственно перед дефункцией. Это возможно? Большое спасибо!

Редактировать:Я взял изображение из пакета genealogytree. Код для генерации изображения будет примерно таким:

g{male,name={Charles \surn{Smith}},birth={1722}{London},baptism={1722}{London},comment={Copper smith, soldier. Invented the square wheel},death={1764}{}}

Я бы хотел, чтобы комментарий был до смерти на отображаемом изображении.

решение1

Я не эксперт по genealogytree, но основываясь наофициальная документация, вы можете использовать \gtrDeclareDatabaseFormatдля создания новых форматов базы данных. Вот один для вас, называется myAwesomeFormat:

Пример генеалогического древа двух братьев и сестер, Чарльза Смита и Джейн Смит. Чарльз находится слева от древа, а его имя указано в поле с синей рамкой. Под его именем есть комментарий «кузнец по меди, солдат. Изобрел квадратное колесо», за которым следует год и место его рождения, крещения и смерти. Джейн Смит справа с идентично отформатированным полем, но с красной рамкой. Под именем Джейн есть комментарий «возможно, путешественник во времени», за которым следует год и место ее рождения, крещения и смерти. Джейн родилась в 1724 году в Саутгемптоне и умерла в 2023 году в Манчестере.

\documentclass{standalone}

\usepackage{genealogytree}

\gtrDeclareDatabaseFormat{myAwesomeFormat}{%
  }{
  \gtrPrintName
  \begin{gtrinfolist}
    \gtrifcommentdefined{\gtrlistseparator\gtrPrintComment}{}%
  \end{gtrinfolist}
  \begin{gtreventlist}
    \gtrifdatedefined{birth}{\gtrlistseparator\gtrPrintEvent{birth}}{}
    \gtrifdatedefined{baptism}{\gtrlistseparator\gtrPrintEvent{baptism}}{}
    \gtrifdatedefined{death}{\gtrlistseparator\gtrPrintEvent{death}}{
      \gtrifdatedefined{burial}{\gtrlistseparator\gtrPrintEvent{burial}}{}
    }
  \end{gtreventlist}
  \begin{gtrinfolist}
    \gtrifprofessiondefined{\gtrlistseparator\gtrPrintProfession}{}
  \end{gtrinfolist}
  \gtrifdatedefined{marriage}{\tcbline\begin{gtreventlist}
  \gtrlistseparator\gtrPrintEvent{marriage}\end{gtreventlist}}{}
}

\begin{document}

\begin{genealogypicture}[
  processing = database,
  database format = myAwesomeFormat,
  node size = 4cm,
  level size = 3.2cm,
  list separators hang,
  place text={\newline}{},
  box={
    fit basedim = 9pt,
    boxsep = 2pt,
    segmentation style = solid,
    halign = left,
    before upper = \parskip1pt,
    \gtrDBsex
  }
]
sandclock{
  child{
    g{
      male,
      name={Charles \surn{Smith}},
      birth={1722}{London},
      baptism={1722}{London},
      comment={Copper smith, soldier. Invented the square wheel},
      death={1764}{}{London}
    }
  }
  child{
    g{
      female,
      name={Jane \surn{Smith}},
      birth={1724}{Southampton},
      baptism={1724}{Southampton},
      comment={Possibly a time traveler},
      death={2023}{}{Manchester}
    }
  }
}
\end{genealogypicture}

\end{document}

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