pgfgantt:选项‘/pgfgantt/compress calendar’无法识别?

pgfgantt:选项‘/pgfgantt/compress calendar’无法识别?

我曾经使用 XeLaTeX(处理字体)很好地编译甘特图,方法是pgfgantt在我的 macOS(High Sierra)上包含 Texmaker。现在,在将 Texmaker 升级到版本 5.0.2 后,使用相同的工作流程,我遇到了有关选项的以下错误compress calendar

​!软件包 pgfkeys 错误:我不知道密钥“/pgfgantt/compress calendar”,我将忽略它。也许你拼错了。

下面的 MWE 重现了这个独特的错误:

\documentclass[11pt,a4paper]{article}
\usepackage{pgfgantt}
\begin{document}
\begin{center}

%\resizebox{\textwidth}{!}{

\begin{ganttchart}[hgrid, vgrid,
time slot format=isodate-yearmonth,
bar/.append style={fill=black!50},
milestone/.append style={fill=black, rounded corners=3pt},
compress calendar
]{1-01}{1-12}
\gantttitlecalendar{year, month} \\
\ganttbar[bar/.append style={fill=white}]{Pre}{1-1}{1-3} \\
\ganttbar[bar/.append style={shape=ellipse, fill=black}]{Post}{1-10}{1-10} \\
\ganttmilestone{Milestone}{1-6}
\end{ganttchart}

%}% close \resizebox

\end{center}
\end{document}

当我评论时compress calendar,一切正常,但图表会泄漏到页面之外。如果我强制使用resizebox,视觉效果会有所改善,但还不够好。此外,x unit减少新获得的列宽也没有帮助。

有人可以就这个问题发表一下看法吗?

答案1

此行为已在软件包 v5.0(发布于 2018/01/18)中进行了更改pgfgantt。从包装文档

密钥compress calendar已被替换,time slot unit以允许额外的压缩级别(年)

使用旧的行为compress calendartime slot unit=month现在似乎是正确的选择:

\documentclass[11pt,a4paper]{article}
\usepackage{pgfgantt}
\begin{document}
\begin{center}

\begin{ganttchart}[hgrid, vgrid,
    time slot format=isodate-yearmonth,
    bar/.append style={fill=black!50},
    milestone/.append style={fill=black, rounded corners=3pt},
    time slot unit=month
]{1-01}{1-12}
    \gantttitlecalendar{year, month} \\
    \ganttbar[bar/.append style={fill=white}]{Pre}{1-1}{1-3} \\
    \ganttbar[bar/.append style={shape=ellipse, fill=black}]{Post}{1-10}{1-10} \\
    \ganttmilestone{Milestone}{1-6}
\end{ganttchart}

\end{center}
\end{document}

相关内容