我怎样才能在 tikz 中绘制这个箭头?

我怎样才能在 tikz 中绘制这个箭头?

两支箭我需要在 tikz 图片中显示两个箭头,含义为:a)。从 A 无法得到 B;b)。B 可以从 A 派生,但反之则不行。

\draw[->] (a) -- (b)可以得到普通的箭,但是得到这些特殊箭的命令是什么?

答案1

对于中间部分的删除,请参阅 Guilherme Zanotelli 发布的链接(TikZ 中的双箭头?) 可以提供帮助,我使用了 Jannis Pohlmann 给出的得票最高的答案来编写下面的代码。

为了在下图中制作“半”箭头尖,请使用库Straight Barb[left]中的箭头尖arrows.meta

在此处输入图片描述

\documentclass[border=4mm]{standalone}

\usepackage{tikz}
\usetikzlibrary{
    decorations.markings,
    arrows.meta  %% <--
}

\tikzset{
  barbarrow/.style={ % style that just defines the arrow tip
     >={Straight Barb[left,length=5pt,width=5pt]}
  },
  strike through/.style={
    postaction=decorate,
    decoration={
      markings,
      mark=at position 0.5 with {
        \draw[-] (-3pt,-3pt) -- (3pt, 3pt);
      }
    }
  }
}

\begin{document}
\begin{tikzpicture}
  \node (A1) at (0,1) { A };
  \node (B1) at (4,1) { B };

  \draw[-Stealth,strike through]  (A1) -- (B1);


  \node (A) at (0,0) { A };
  \node (B) at (4,0) { B };

  \draw[->,barbarrow]                ([yshift= 2pt] A.east) -- ([yshift= 2pt] B.west);
  \draw[<-,barbarrow,strike through] ([yshift=-2pt] A.east) -- ([yshift=-2pt] B.west);
\end{tikzpicture}
\end{document}

相关内容