如何使用 TikzUml 排版模板属性?

如何使用 TikzUml 排版模板属性?

我尝试使用以下代码在 Tikz Uml 中排版模板类属性:

\documentclass[border=10pt]{standalone}
\usepackage{tikz}
\usepackage{tikz-uml}

\begin{document}

\begin{tikzpicture}
    \tikzumlset{font=\footnotesize}

    \umlclass[x=0, y=0, type=abstract]{Class}{}{
        \umlvirt{+execute(): bool}
    }

    \umlclass[x=-3, y=-4]{DerivedClass}
    {
        -variable\_: type\\
        -variablePtr\_: smartPtr<variableType>
    }
    {
    }
    \umlVHVimpl[anchors=north and south]{DerivedClass}{Class}

\end{tikzpicture}

\end{document}

我得到了这个结果:

在此处输入图片描述

我期望的不是 smartPtr¡variableType¡

smartPointer<variableType>

我该怎么做?我尝试转义“<”字符,但出现以下错误:

! Undefined control sequence.
\tikzumlClassAttributes ...riablePtr\_: smartPtr\<
                                                  variableType\> 
l.20     }

答案1

到目前为止还没有人回答,我发现使用 \textless \textgreater 可以暂时解决这个问题,所以现在是这样的:

\documentclass[border=10pt]{standalone}
\usepackage{tikz}
\usepackage{tikz-uml}

\begin{document}

\begin{tikzpicture}
    \tikzumlset{font=\footnotesize}

    \umlclass[x=0, y=0, type=abstract]{Class}{}{
        \umlvirt{+execute(): bool}
    }

    \umlclass[x=-3, y=-4]{DerivedClass}
    {
        -variable\_: type\\
        -variablePtr\_: smartPtr\textless variableType\textgreater
    }
    {
    }
    \umlVHVimpl[anchors=north and south]{DerivedClass}{Class}

\end{tikzpicture}

\end{document}

结果

在此处输入图片描述

相关内容