我刚刚安装了 TeXLive 2013 以支持 TeXLive 2012,但它似乎与 中的里程碑呈现方式存在向后不兼容pgfgantt
。在 TeXLive 2012 中,我的甘特图代码呈现如下:
然而,在 TeXLive 2013 中,修复了一些明显不推荐使用的属性(例如milestone width
)之后,它被呈现如下:
我更喜欢原来的里程碑标志,但我不知道如何恢复原来的里程碑风格。有人知道怎么做吗?
代码本质上是:(我把它精简为 MWE)
\documentclass{standalone}
\usepackage{tikz}
\usepackage{pgfgantt}
\begin{document}
\begin{ganttchart}[inline,vgrid]{1}{17}
\gantttitlelist{1,...,17}{1} \\
\ganttbar{$(1,2)$}{1}{15}
\ganttbar{$(1,3)$}{1}{10}
\ganttbar{$(4,6)$}{11}{13}
\ganttbar{$(1,4)$}{1}{8}
\ganttbar{$(4,5)$}{9}{14} \\
\ganttmilestone{$1$}{0}
\ganttmilestone{$4$}{8}
\ganttmilestone{$2$}{15}
\end{ganttchart}
\end{document}
答案1
仅供参考,这是您的 MWE 生成的:
使用 TexLive 2012 (使用pgfgantt 2012/01/25 v3.0
) 进行编译:
使用 TexLive 2013 (使用pgfgantt 2013/06/01 v4.0
) 进行编译:
如您所见,里程碑的形状相同,显然唯一的区别是背景网格。因此,要么您之前的 pgfgantt 版本更旧,要么您过度减少了 MWE 并删除了一些影响里程碑形状的代码。
无论如何,我比较了两个版本的代码pgfgantt.sty
,发现它完全改变了处理这些形状的方式。在新版本中,创建了适当的 tikz 节点形状,并通过 pgf 键管理许多微小的细节。
使用这些键,您只需在序言中添加以下内容即可恢复以前的里程碑:
\pgfkeys{
/pgfgantt/milestone inline label node/.style={
shape=rectangle, draw=black, fill=white, anchor=north
}
}
并得到: