Nem egyenlőségjel (≠) függőleges sávval

Lehetséges \neq, de függőleges ferde helyett bár? Vannak olyan egyenlőtlenségi operátorok, mint az AMS “s \gvertneqq, amelyek ezt a fajta” nem egyenlő “-et tartalmazzák, de nem keverik más jelekkel.

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

a fenti kód eredménye

Tehát amire alapvetően szeretnék, az az izolált szimbólum a alatt id = “5673c1189c”>

fent. Különösen azért, mert nem szeretem a perjelek különböző meredekségeit a második sorban, és a “≠ ∅” meglehetősen gyakori kombináció.

Válasz

Egyenlőségjel függőleges vonallal

A függőleges vonal | egy kicsit magas íz. A \vneq következő definíciója csökkenti a függőleges vonal teljes magasságát, hogy megfeleljen a \neq teljes magasságának. A függőleges magasság átméretezése nem változtatja meg a vonal vastagságát vízszintes irányban.

  • A függőleges vonal végső hossza és magassága finomhangolható makrók újradefiniálásával \vneqxscale és \vneqyscale. Az alapértelmezett 1.
  • \mathpalette lehetővé teszi a szimbólum automatikus átméretezését.

Példafájl:

\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} 

Eredmény

A magasság tovább csökkenthető, pl.

\renewcommand*{\vneqyscale}{.8} 

Eredmény / .8

Eredmény a :

mathabx

Eredmény a txfonts kifejezésre:

txfonts

Eredmény a (z) MnSymbol címre:

MnSymbol

Itt a függőleges vonal túl vastag, és a a vízszintes átméretezés igényeinek zsugorodni kell:

Eredmény a MnSymbol és a \vneqxscale = .67 eredményre :

MnSymbol / .67

A varnothing

helyett: \neq megváltoztatása helyett az üres halmaz szimbóluma \varnothing a \not felhasználásával elkészíthető a ferde függőleges vonalak meredekségéhez. Az \circ azonban túl kicsi és \bigcirc túl nagy. Ezért ezt a módszert a txfonts esetében mutatjuk be, amely \medcirc és MnSymbol \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} 

Eredmény a txfonts címre:

txfonts

MnSymbol:

MnSimbol

Megjegyzések

  • Ez csak egy csodálatos válasz! Remélem, Werner ' nem bánta, hogy nem tudtam ' t, de megváltoztattam az elfogadott választ erre. ' problémáim vannak, amikor \renewcommand \neq próbálkozom a \vneq. Pontosabban: kapok egy " TeX kapacitást, amely meghaladja a " értéket. Van ötlet miért?
  • \vneq is using \ neq` a \@vneq makróban. Így eltárolhatja a régi jelentést: \let\ltxneq=\neq, és a \ltxneq elemet a \@vneq mezőben használhatja. Ezután képesnek kell lennie a \neq újradefiniálására.

Válasz

Igen:

képernyőkép az alábbi kódról

\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} 

A motiváció érdekében parancsok a \vneq fájlban, olvassa el az egreg kiváló oktatóanyagát a \ooalign fájlban a \subseteq + \circ egyetlen szimbólumként („nyitott részhalmaz”)

Megjegyzések

  • Nagyszerű, köszönöm! Hozzáadtam $$ -t a = köré is, ami akkor válik fontossá, ha van más szöveg, mint a matematikai betűtípus.Ettől eltekintve ez a legelegánsabb megoldás 🙂

Válasz

Egyszerűsítő megoldás a következő lenne:

\usepackage{mathabx} \changenotsign 

de ez a matematikai szimbólumok nagy részének megváltoztatását jelentené, ami nem kívánatos, mivel véleményem szerint a rosszul vannak megtervezve.

A szokásos eszközökkel ellátott megoldás

\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} 

A következőt használtam: \renewcommand mert egyszerűen a kód eltávolításáról lesz szó, hogy a \neq visszaálljon a szokásos alakjába.

A \mathpalette, a létrehozott szimbólum kisebb lesz az előfizetőkben vagy a felső indexekben.

írja ide a kép leírását

Megjegyzések

  • mind a szimbólum, mind az egyenlőségjel és egy visszahajló törlés szerepel a stix betűtípusokban.
  • @barbarabeeton Igen, de ezek a betűtípusok nem ' tm ix jól a Computer Modern és más betűtípusokkal.
  • szomorú, de igaz. úgy tervezték, hogy keveredjenek az időkkel, ami a stipub konzorcium tagjainak konszenzusos betűtípusa volt.

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük