我感兴趣的是将两个字母交织在一起,它们是两个节点的标签;或者将字母的形状转换为两条路径(很像 Inkscape 中同名的功能),然后我可以像这个 Borromean 环的例子一样将它们交织在一起:http://www.texample.net/tikz/examples/borromean-rings/
这是我的 MWE:
\begin{tikzpicture}
\fill[gray!60] (0,0) circle (2);
\node[color=black!80]
at (0.25,-0.25)
{\fontsize{60}{20}\fontfamily{ppl}\fontseries{b}\selectfont C};
\node[color=yellow!50]
at (-0.25,0.25)
{\fontsize{60}{20}\fontfamily{ppl}\fontseries{b}\selectfont Q};
\end{tikzpicture}
我想要的是,在最上面的交叉点,C 从 Q 上方经过,而在最下面的交叉点,C 从 Q 下方经过。我附上了一张我想要的图片,是用 Pinta 随意制作的。
答案1
这不是一个通用的解决方案,但你可以只绘制两次黑色字母,但第二次剪辑它,以便只绘制你想要的部分:
\documentclass[tikz]{standalone}
\begin{document}
\begin{tikzpicture}
\fill[gray!60] (0,0) circle (2);
\node[color=black!80, font=\fontsize{60}{20}\fontfamily{ppl}\fontseries{b}\selectfont]
at (0.25,-0.25) {C};
\node[color=yellow!50, font=\fontsize{60}{20}\fontfamily{ppl}\fontseries{b}\selectfont]
at (-0.25,0.25) {Q};
\clip (0,0) -- (0:2) arc (0:90:2) -- cycle;
\node[color=black!80, font=\fontsize{60}{20}\fontfamily{ppl}\fontseries{b}\selectfont]
at (0.25,-0.25) {C};
\end{tikzpicture}
\end{document}
答案2
这只是对David Purton 的精彩回答。有些人可能觉得直接指定字符应该被剪切多少会更舒服。只要距离字符的任一边界有一段距离,trimclip
就可以完成工作(原则上你不需要tikz
那么做)。通常最好使用font
或node font
键来设置字体,而circle[radius=2]
不是circle(2)
。
\documentclass[tikz,border=3mm]{standalone}
\usepackage{trimclip}
\begin{document}
\begin{tikzpicture}[node font=\fontsize{60}{20}\fontfamily{ppl}\fontseries{b}\selectfont]
\fill[gray!60] (0,0) circle[radius=2];
\node[color=black!80,below] at (0.25,1.25) {C};
\node[color=yellow!50] at (-0.25,0.25) {Q};
\node[color=black!80,below] at (0.25,1.25) {\clipbox{0em 0.5em 0em 0em}{C}};
\end{tikzpicture}
\end{document}