Ungleichzeichen (≠) mit senkrechtem Strich

Ungleichzeichen (≠) mit senkrechtem Strich

Ist es möglich, ein „aber“ mit einem senkrechten Strich statt einem schrägen zu erhalten \neq? Es gibt Ungleichheitsoperatoren wie den von AMS, \gvertneqqdie diese Art von „ungleich“ aufweisen, aber nicht ohne es mit anderen Zeichen zu mischen.

\documentclass[a5paper]{article}
\usepackage{amssymb}
\usepackage{amsmath}
\begin{document}
\begin{align*}
a&\gvertneqq b\\
C&\neq \varnothing
\end{align*}
\end{document}

Ergebnis des obigen Codes

Was ich also grundsätzlich gerne hätte, ist das isolierte Symbol unter dem > im \gvertneqqobigen Beispiel. Insbesondere, weil mir die unterschiedlichen Steigungen der Schrägstriche in der zweiten Zeile nicht gefallen und „≠∅“ eine recht häufige Kombination ist.

Antwort1

Gleichheitszeichen mit senkrechtem Strich

Die vertikale Linie |ist für meinen Geschmack etwas zu hoch. Die folgende Definition für \vneqverringert die Gesamthöhe der vertikalen Linie, um sie der Gesamthöhe von anzupassen \neq. Die Größenänderung der vertikalen Höhe ändert nicht die Linienstärke in horizontaler Richtung.

  • \vneqxscaleDie endgültige Breite und Höhe der vertikalen Linie kann durch Neudefinition von Makros und feinabgestimmt werden \vneqyscale. Der Standardwert ist 1.
  • \mathpaletteermöglicht die automatische Größenanpassung des Symbols.

Beispieldatei:

\documentclass{article}

\usepackage{amssymb}% \varnothing

\usepackage{graphicx}% \resizebox
\makeatletter
\newcommand*{\vneq}{%
  \mathrel{%
    \mathpalette\@vneq{=}%
  }%
}
\newcommand*{\@vneq}[2]{%
  % #1: math style (\displaystyle, \textstyle, ...)
  % #2: symbol (=, ...)
  \sbox0{\raisebox{\depth}{$#1\neq$}}%
  \sbox2{\raisebox{\depth}{$#1|\m@th$}}%
  \ifdim\ht2>\ht0 %
    \sbox2{\resizebox{\vneqxscale\width}{\vneqyscale\ht0}{\unhbox2}}%
  \fi
  \sbox2{$\m@th#1\vcenter{\copy2}$}%
  \ooalign{%
    \hfil\phantom{\copy2}\hfil\cr
    \hfil$#1#2\m@th$\hfil\cr
    \hfil\copy2\hfil\cr
  }%
}
\newcommand*{\vneqxscale}{1}
\newcommand*{\vneqyscale}{1}
\makeatother

\begin{document}
\[
  % Comparison \neq vs. vneq
  \varnothing \neq \emptyset \vneq \varnothing \\
\] 
\[ 
  % Check sizes:
  \vneq^{\vneq^{\vneq}} \\
\] 
\[ 
  % Bounding box checks:
  \setlength{\fboxsep}{0pt}
  \setlength{\fboxrule}{.1pt}
  \fbox{$\neq$}\,\fbox{$\vneq$}\,\fbox{$|$}
\]
\end{document}

Ergebnis

Die Höhe kann weiter verringert werden, z.B.

\renewcommand*{\vneqyscale}{.8}

Ergebnis/.8

Ergebnis für mathabx:

mathex

Ergebnis für txfonts:

txfonts

Ergebnis für MnSymbol:

MnSymbol

Hier ist die vertikale Linie zu dick und die horizontale Größenanpassung muss verkleinert werden:

\renewcommand*{\vneqxscale}{.67}

Ergebnis für MnSymbolund \vneqxscale= .67:

MnSymbol/.67

Als Alternativevarnothing

Anstatt zu ändern \neq, könnte das leere Mengensymbol \varnothingmithilfe von konstruiert werden, \notum der Neigung der schrägen vertikalen Linien zu entsprechen. Allerdings \circist zu klein und \bigcirczu groß. Daher wird diese Methode für angezeigt, die und mit txfontsbereitstellt .\medcircMnSymbol\medcircle

\documentclass{article}

%\usepackage{txfonts}
%\newcommand*{\varemptysetcircle}{\medcirc}

\usepackage{MnSymbol}
\newcommand*{\varemptysetcircle}{\medcircle}

\makeatletter
\newcommand*{\varemptyset}{%
  {% mathord
    \vphantom{\not=}% correct height and depth of the final symbol
    \mathpalette\@varemptyset\varemptysetcircle
  }%
}
\newcommand*{\@varemptyset}[2]{%
  % #1: math style (\displaystyle, \textstyle, ...)
  % #2: circle
  \ooalign{%
    \hfil$\m@th#1\not\hphantomeq$\hfil\cr
    \hfil$\m@th#1#2$\hfil\cr
  }%
}
% \not can be redefined to take an argument
\newcommand*{\hphantomeq}{%
  \mathrel{\hphantom{=}}%
}
\makeatother

\usepackage{color}

\begin{document}
\[
  \not=\; \color{blue}\neq \varemptyset\; \color{black}\varnothing
\]
\end{document}

Ergebnis für txfonts:

txfonts

Ergebnis für MnSymbol:

MnSymbol

Antwort2

Ja:

Screenshot des Codes unten

\documentclass[a5paper]{article}
\usepackage{amssymb}
\usepackage{amsmath}
\newcommand\vneq{\mathrel{\ooalign{$=$\cr\hidewidth$|$\hidewidth\cr}}}
\begin{document}
\begin{align*}
a&\gvertneqq b\\
C&\neq \varnothing \\
d&\vneq f
\end{align*}
\end{document}

Um mehr über die Befehle in zu erfahren \vneq, lesen Sie egregs hervorragendes Tutorial zu \ooalignin\subseteq+ \circals einzelnes Symbol („offene Teilmenge“)

Antwort3

Eine einfache Lösung wäre

\usepackage{mathabx}
\changenotsign

das würde allerdings bedeuten, dass ein großer Teil der mathematischen Symbole geändert werden müsste, was nicht wünschenswert ist, da meiner Meinung nach einige der bereitgestellten Symbole mathabxschlecht gestaltet sind.

Eine Lösung mit Standardwerkzeugen ist

\documentclass{article}

\renewcommand\neq{\mathrel{\vphantom{|}\mathpalette\xsneq\relax}}
\newcommand\xsneq[2]{%
  \ooalign{\hidewidth$#1|$\hidewidth\cr$#1=$\cr}%
}

\begin{document}
$a\neq b$
\end{document}

Ich habe es verwendet \renewcommand, weil es lediglich darum geht, den Code zu entfernen, um ihn wieder \neqin die übliche Form zu bringen.

Durch die Verwendung \mathpalettewird das erstellte Symbol in tiefgestellten oder hochgestellten Ziffern kleiner.

Bildbeschreibung hier eingeben

verwandte Informationen