Wie erstelle ich einen negierten Pfeil auf \xRightarrow?

Wie erstelle ich einen negierten Pfeil auf \xRightarrow?

Ähnlich zudiese Frage, sondern stattdessen mit \xRightarrow. Ich habe versucht, die 3. Version so zu ändern, dass sie \Rightarrowwie folgt verwendet wird:

\documentclass{standalone}

\usepackage{amsmath}
\usepackage{amssymb} % for \diagup
\usepackage{mathtools}
\usepackage{tikz} % for tikz solution

\makeatletter
\def\slashedarrowfill@#1#2#3#4#5{%
  $\m@th\thickmuskip0mu\medmuskip\thickmuskip\thinmuskip\thickmuskip
   \relax#5#1\mkern-7mu%
   \cleaders\hbox{$#5\mkern-2mu#2\mkern-2mu$}\hfill
   \mathclap{#3}\mathclap{#2}%
   \cleaders\hbox{$#5\mkern-2mu#2\mkern-2mu$}\hfill
   \mkern-7mu#4$%
}

\def\rightslashedarrowfillc@{%
  \slashedarrowfill@\relbar\relbar{\raisebox{.12em}{\tiny/}}\Rightarrow}
\newcommand\xslashedrightarrowc[2][]{%
  \ext@arrow 0055{\rightslashedarrowfillc@}{#1}{#2}}
\makeatother

\begin{document}
    A \xslashedrightarrowc{abcdefg} C\\[12pt]
\end{document}

Aber stattdessen landet es hier:

wieder durchgestrichene Pfeile

Ich gehe davon aus, dass mit der Definition etwas nicht stimmt, \slashedarrowfillaber ich weiß nicht genug, um es zu beheben. Kann mir bitte jemand den richtigen Weg weisen?

Antwort1

centernotDafür bietet sich das Paket von Heiko Oberdiek an:

Bildbeschreibung hier eingeben

\documentclass{standalone}

\usepackage{centernot}
\usepackage{mathtools}

\begin{document}
$\centernot{\xRightarrow{sdfkjhsdf}}$
\end{document}

Antwort2

Die folgende Testdatei fügt neue Makros hinzu, \x(n)(Left|Right|Leftright)arrowdie den Definitionen des Pakets ähneln amsmath. Die negierten Pfeile verwenden Hilfemakros \narrowfill@mit dem Symbol \neqin der Mitte des dehnbaren Bereichs des Pfeils.

\documentclass{article}
\usepackage{amsmath}

\makeatletter
\newcommand*{\xRightarrow}[2][]{%
  \ext@arrow 0359\Rightarrowfill@{#1}{#2}%
}
\newcommand*{\xLeftarrow}[2][]{%
  \ext@arrow 3095\Leftarrowfill@{#1}{#2}%
}
\newcommand*{\xLeftrightarrow}[2][]{%
  \ext@arrow 3399\Leftrightarrowfill@{#1}{#2}%
}

\newcommand*{\xnRightarrow}[2][]{%
  \ext@arrow 0359\nRightarrowfill@{#1}{#2}%
}
\newcommand*{\xnLeftarrow}[2][]{%
  \ext@arrow 3095\nLeftarrowfill@{#1}{#2}%
}
\newcommand*{\xnLeftrightarrow}[2][]{%
  \ext@arrow 3399\nLeftrightarrowfill@{#1}{#2}%
}

\newcommand*{\nRightarrowfill@}{%
  \narrowfill@\Relbar\Relbar\Rightarrow\neq
}
\newcommand*{\nLeftarrowfill@}{%
  \narrowfill@\Leftarrow\Relbar\Relbar\neq
}
\newcommand*{\nLeftrightarrowfill@}{%
  \narrowfill@\Leftarrow\Relbar\Rightarrow\neq
}

\newcommand*{\narrowfill@}[5]{%
  $\m@th\thickmuskip0mu\medmuskip\thickmuskip\thinmuskip\thickmuskip
  \relax#5#1\mkern-7mu%
  \cleaders\hbox{$#5\mkern-2mu#2\mkern-2mu$}\hfill
  \mkern-5mu %
  #4%
  \mkern-5mu %
  \cleaders\hbox{$#5\mkern-2mu#2\mkern-2mu$}\hfill
  \mkern-7mu#3$%
}
\makeatother

\begin{document}
\begin{align*}
  A &\xRightarrow[below]{above} B      & C &\xRightarrow{} D \\
  A &\xnRightarrow[below]{above} B     & C &\xnRightarrow{} D \\
  A &\xLeftarrow[below]{above} B       & C &\xLeftarrow{} D \\
  A &\xnLeftarrow[below]{above} B      & C &\xnLeftarrow{} D \\
  A &\xLeftrightarrow[below]{above} B  & C &\xLeftrightarrow{} D \\
  A &\xnLeftrightarrow[below]{above} B & C &\xnLeftrightarrow{} D
\end{align*}
\end{document}

Ergebnis

Bemerkungen:

  • Die Höhe und Tiefe \neqwird automatisch berücksichtigt und Hoch- und Tiefstellung werden verschoben, um Konflikte mit dem Schrägstrich zu vermeiden.
  • Wenn ein Paket mathtoolsbenötigt wird, laden Sie es anschließend. Es definiert auch \xLeftarrow, \xRightarrow, und \xLeftrightarrow, aber meiner Meinung nach ist der Abstand der Versionen mathtoolszu eng, was zu möglichen visuellen Konflikten der Anmerkungen mit der Pfeilspitze führen kann.

Antwort3

Die vorherige Lösung ist etwas fehlerhaft, da Sie die manuell festlegen müssen \kern length. Ich würde es vorziehen, ein einfaches Makro wie im folgenden Code
zu definieren :\NOT

\documentclass{standalone}
\usepackage{amsmath,amssymb}
\usepackage{mathtools}

\newlength{\NOTskip} 
\def\NOT#1{\settowidth{\NOTskip}{\ensuremath{#1}}%
            \hspace{0.5\NOTskip}\mathclap{\not}\hspace{-0.5\NOTskip}#1}

\begin{document}
\begin{equation*}
 A \NOT{\xRightarrow{bla}} C \NOT{\xleftarrow[\text{et caetera}]{}} Z
\end{equation*}
\end{document}

Produktion Bildbeschreibung hier eingeben

Antwort4

Bearbeitet: Ich würde so etwas versuchen:

\kern.8em\not\kern -.8em \xRightarrow[ablalba]{}

Hier ein Beispiel:

\documentclass{article}
\usepackage{mathtools}
\begin{document}
\[ \kern.8em\not\kern -.8em \xRightarrow[Text goes here]{and here} \]
\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen