“babel” 包使得“森林”树木的渲染变得不可能

“babel” 包使得“森林”树木的渲染变得不可能

我正在尝试重新创建示例代码包装文档见第 29 页。

该包名为“forest”,用于在 LaTeX 中绘制树木。

该示例展示了如何绘制一棵树,其中每个节点的宽度都与其子节点的宽度之和一样。

但是“babel”包会干扰“forest”并使得渲染变得无法进行。

一个最小(不)工作示例:

\documentclass[ngerman]{article}
\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}
\usepackage[german]{babel}
\usepackage{geometry}
\geometry{verbose, tmargin=2cm, bmargin=2cm, lmargin=2cm, rmargin=2cm}
\usepackage{tikz}
\usepackage{forest}

\begin{document}
\forestset{
    box/.style={
        draw, no edge, l=0, l sep=1.5ex, calign=first, anchor=base west,
        content format={\strut\forestoption{content}},
        if n children=0{}{
            after packing node={
                minimum width/.pgfmath={s("!l")+max_x("!l")-s("!1")-min_x("!1")},
                for children/.wrap pgfmath arg={s+={##1}}{0},
                typeset node
            }
        }
    }
}

\begin{forest} for tree={box} [/
    [home[saso[Download][TeX]][alja][joe]]
    [usr[bin][share]]]
\end{forest}
\end{document}

在这种形式下,该行minimum width/.pgfmath={s("!l")+max_x("!l")-s("!1")-min_x("!1")}会导致Missing number, treated as zero. \end{forest}错误。

但是当我注释掉该\usepackage[german]{babel}行时,它就可以正常工作。

我如何在文档中使用这两个包?或者这没有必要,因为我使用了ngerman类的选项article

相关内容