我看过PgfGantt:自定义画布来标记假期并实现了一个版本,用于绘制从一个日期开始并在另一个日期结束的矩形,效果很好。问题是我想让标签位于矩形下方的中心,但我却被限制在右下角。
我试图通过从该角到中心画一条线来解决这个问题:
\draw (stop) -- ($ (stop) - ((stop)-(start))*(0.5,0) $);
这个等式的大部分内容都成立,但是乘号无法识别。
我怎样才能让 LaTeX 进行这个计算?
答案1
通常的线性插值计算使用!<num>!
语法,对于您的示例,它只是(通过calc
库)
\draw (stop) -- ($(stop)!0.5!(start)$);
但是为了好玩,如果您想通过坐标进行乘法运算,那么您需要嵌套计算指示符(因为如果我们能让内心的数学家闭嘴,两个坐标的乘法是未定义的)
\begin{tikzpicture}
\draw[style=help lines] (0,0) grid[step=1cm] (3,2);
\coordinate (a);
\coordinate (b) at (1,1);
\coordinate (c) at (5,2);
\draw (a) -- ($0.5*($(c) - (b)$)$); % Difference is (4,1) --> (2,0.5) should come out
\end{tikzpicture}