
Я использую genealogytree
пакет для создания красивого генеалогического древа. Однако, что бы я ни делал, мне не удалось правильно отформатировать даты. Например, я ожидал бы, что нижний узел будет иметь дату рождения 22.7.1877, основываясь на формате d.m.yyyy
. Я написал необязательные аргументы для \genealogytree, следуя руководству, и, похоже, вызывается некоторая процедура форматирования, поскольку календарь (caAD)
интерпретируется правильно, но фактические даты печатаются как есть. Разумно минимальный пример:
\documentclass[a4paper, landscape]{book}
\usepackage{fullpage}
\usepackage[czech]{babel}
\usepackage[all]{genealogytree}
\begin{document}
\begin{tikzpicture}
\genealogytree[
processing=database, database format=medium no marriage,
tcbset={male/.style={colframe=blue,colback=blue!5}, female/.style={colframe=red,colback=red!5}},
name font=\bfseries, place text={\newline}{}, date format=d.m.yyyy,
label database options={place text={(}{)}},
label options={fill=white,node font=\footnotesize,inner sep=0.5mm,draw=green!30!black},
]{
parent[family database={marriage={1874-02-16}{Zalužany}}]{
g[male]{name={Josef Zelenka}, birth={1877-07-22}{Zalužany}}
parent[family database={marriage={1848-03-06}{Kozárovice}}]{
g[male]{name={František Zelenka}, birth={1850-04-12}{Kozárovice}, death={1893-04-08}{Kozárovice}}
p[male]{name={Tomáš Zelenka}, birth={1812-12-29}{Kozárovice}, death={1890-03-10}{Kozárovice}}
p[female]{name={Anna Peterková}, birth={1817-11-14}{Kozárovice}, death={1890-06-16}{Kozárovice}}
}
parent[family database={marriage={1842-02-06}{Nevězice}}]{
g[female]{name={Marie Říhová}, birth={1850-06-17}{Zalužany}, death={1889-08-09}{Kozárovice}}
p[male]{name={Josef Říha}, birth={1819-08-04}{Vrábsko}}
p[female]{name={Josefa Skopečková}, birth={(caAD)1824}{Nevězice}}
}
}
}
\end{tikzpicture}
\end{document}
genealogytree
Версия пакета . 2.1.0
Я использую pdflatex, вывод pdflatex -version
:
pdfTeX 3.141592653-2.6-1.40.22 (TeX Live 2022/dev/Debian)
kpathsea version 6.3.4/dev
Copyright 2021 Han The Thanh (pdfTeX) et al.
There is NO warranty. Redistribution of this software is
covered by the terms of both the pdfTeX copyright and
the Lesser GNU General Public License.
For more information about these matters, see the file
named COPYING and the pdfTeX source.
Primary author of pdfTeX: Han The Thanh (pdfTeX) et al.
Compiled with libpng 1.6.37; using libpng 1.6.37
Compiled with zlib 1.2.11; using zlib 1.2.11
Compiled with xpdf version 4.03
Большое спасибо всем, кто сможет помочь!
решение1
Как указано в комментарии, проблема вызвана Babel с чешской опцией. Это потому, что эта опция включается -
как сокращение (см. напримерСписок сокращений Babel). Сокращение — это символ или комбинация символов, которые позволяют легко вводить специфичные для языка знаки препинания или отключать лигатуры, что работает путем превращения символа в команду LaTeX. Однако разбор даты genealogytree
зависит от того, является ли дефис обычным символом.
Вы можете отключить стенографию внутри tikzpicture
окружения:
\documentclass[a4paper, landscape]{book}
\usepackage{fullpage}
\usepackage[czech]{babel}
\usepackage[all]{genealogytree}
\AddToHook{env/tikzpicture/before}{\shorthandoff{-}}
Результат: