![在 TikZ 中自动剪切未绘制的对象](https://linux22.com/image/243275/%E5%9C%A8%20TikZ%20%E4%B8%AD%E8%87%AA%E5%8A%A8%E5%89%AA%E5%88%87%E6%9C%AA%E7%BB%98%E5%88%B6%E7%9A%84%E5%AF%B9%E8%B1%A1.png)
我已经使用该trees
包来构建我的绘图,但实际上我不需要边缘。因此,我设置了以下内容来抑制它们:
\tikzstyle{edge from parent}=[]
这是可行的,但是 TikZ 仍然会在绘图中为这些边缘分配空间,即使它们不可见。
是否可以告诉 TikZ 在执行自动剪辑时忽略这些?
这是我当前的代码:
\newcommand{\tc}[1]{\includegraphics[clip,trim=1.15cm 1.15cm 1.15cm 1.15cm]{EPSCards/#1.pdf}}
\begin{tikzpicture}[grow cyclic,sibling angle=-12,level distance=8cm,scale=0.9] %scale just to fit on page easier
\node{} child[rotate=90]
foreach \card in {KS,KH,KD,KC,AS} {node[transform shape,rotate=-90] {\tc{\card}}};
\end{tikzpicture}
图表可从以下网址获取:http://code.google.com/p/vectorized-playing-cards/(您需要epstopdf
在 .eps 文件上运行)。
输出结果如下:
如您所见,图像底部为树的边缘分配了额外的空间。如果我将它们设置为不绘制,额外的空间不会消失。有没有办法完全抑制边缘?
我意识到这不是该软件包的最佳使用方式trees
,但这是我实现目标的最快方法:)
答案1
我可以建议另一种方法来做这件事吗?
\documentclass{standalone}
\usepackage{tikz}
\newcommand{\tc}[1]{\includegraphics[clip,trim=1.15cm 1.15cm 1.15cm 1.15cm,scale=0.5]{card/#1}}
\begin{document}
\begin{tikzpicture}
\foreach \i/\j in {-24/KS,-12/KH,0/KD,12/KC,24/AS}
{
\pgfmathsetmacro{\Angle}{90-\i}
\node at (\Angle:4cm) [rotate=-\i] {\tc{\j}};
};
\draw (current bounding box.south east) rectangle (current bounding box.north west);
\end{tikzpicture}
\end{document}