tikz定位方法
2021年11月23日参见 pgfmanual.pdf chapter 13.
数值坐标
(x:y) polar coordinates. (30:1cm) 根据当前位置定位,角度为30度,长度为1cm。0度为正右,90度为正上。
(x,y) 在x-y坐标系的绝对位置。
+(x,y) 在x-y坐标系,基于当前位置添加偏移量计算出新坐标。
++(x,y) 在x-y坐标系,基于当前位置添加偏移量计算出新坐标,设新坐标为当前位置。
命名坐标
坐标可以被给与名称。tikz内置了一些命名坐标,用户也可以自己给一个坐标命名。
内置命名坐标
(current subpath start)
使用at命令
\node at (current page.center) { ... };
\node at (p |- q) { ... };
node定位在p的垂直线和q的水平线的交界处。
可以用.语法修改锚点
\node at (p |- q.north) { ... };
node定位在p的垂直线和q的北边的水平线的交界处。
可以用option里的anchor修改node本身的锚点。
\node[anchor=south] at (p |- q.north) { ... };
先计算p的垂直线和q的北边的水平线的交界处,这个交界处定位node本身的南边。(默认是定位node的中心)
-|
同理。
使用option
绝对定位加偏移
\draw[red, overlay]([shift={(-.1,.1)}]a.north west) rectangle ([shift={(.1,-.1)}]a.south east);
\node[right=of tr, anchor=south, yshift=0.3cm] (ex) {hunk header};
\usetikzlibrary{positioning}
\node[right=2cm of tr]
计算
需要calc library。
\draw ($(parser)!0.5!(c2)$) |-(c3);
pgfmanual.pdf chapter 17.5.3 Advanced Placement Options