我曾经使用 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 calendar
,time 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}