带有 svg 路径的自定义 TikZ 节点未被剪切

带有 svg 路径的自定义 TikZ 节点未被剪切

我想使用svgTikZ 的指令制作一个带有小图片(在东北)的自定义节点形状,因为该图片来自 svg 路径。

正如您通过这段简单的代码所看到的,图片被剪裁了,我不想添加文本(aaaa)来使附加的节点变大。

如果你能告诉我如何在这张小图片上操作比例和移位就太好了。我所有的测试都失败了!

\documentclass{article}
\usepackage{tikz}
\begin{document}
\usetikzlibrary{svg.path}
\tikzset{ 
  t1/.style={rectangle,fill=blue!20},
  t2/.style={path picture={ \draw[fill=red,draw=blue] svg "M0,0L10,10L20,0L10,-10Z";} } 
}
\begin{tikzpicture}
\node[t1](A) at (1,1){A}; \draw(A.north east) node[t2]{aaaa};
\node[t1](B) at (2,1){B}; \draw(B.north east) node[t2]{};
\end{tikzpicture}
\end{document}

答案1

我绘制了以零为中心且较小的形状,以便您可以更舒适地调整内部分离。

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{svg.path}
\tikzset{ 
  t1/.style={rectangle,fill=blue!20},
  t2/.style={inner sep = 2mm,path picture={ 
        \draw[fill=red,draw=blue] svg "M-3,0L0,3L3,0L0,-3Z";} 
        } 
}
\begin{document}
\begin{tikzpicture}
\node[t1](B) at (2,1){B}; \node[t2] at (B.north east) {};
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容