Är det möjligt att få en \neq men med en vertikal bar istället för en lutande? Det finns ojämlikhetsoperatörer som AMS ”s \gvertneqq som har denna typ av” inte lika ”men inte utan att blanda det med andra tecken.
\documentclass[a5paper]{article} \usepackage{amssymb} \usepackage{amsmath} \begin{document} \begin{align*} a&\gvertneqq b\\ C&\neq \varnothing \end{align*} \end{document}
Så vad jag egentligen skulle vilja ha är den isolerade symbolen under> i \gvertneqq ovan. Särskilt för att jag inte tycker om snedstreckens olika lutningar i andra raden och ”≠ ∅” är en ganska vanlig kombination.
Svar
Likhetstecken med vertikal linje
Den vertikala linjen | är lite hög för min smak. Följande definition för \vneq minskar den totala höjden för den vertikala linjen för att matcha den totala höjden för \neq. Om du ändrar storlek på vertikal höjd ändras inte linjens tjocklek i horisontell riktning.
- Den slutliga vitden och höjden på den vertikala linjen kan finjusteras genom att omdefiniera makron
\vneqxscaleoch\vneqyscale. Standardvärdet är1. -
\mathpalettegör att symbolen kan ändras automatiskt.
Exempel på fil:
\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}
Höjden kan minskas ytterligare, t.ex.
\renewcommand*{\vneqyscale}{.8}
Resultat för mathabx:
Resultat för txfonts:
Resultat för MnSymbol:
Här är den vertikala linjen för tjock och horisontell storleksändring behöver krympas:
Resultat för MnSymbol och \vneqxscale = .67 :
Alternativ till varnothing
I stället för att ändra \neq är den tomma uppsättningssymbolen \varnothing kan konstrueras med \not för att matcha lutningen på de lutande vertikala linjerna. \circ är dock för litet och \bigcirc för stort. Därför visas denna metod för txfonts som ger \medcirc och MnSymbol med \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}
Resultat för txfonts:
Resultat för MnSymbol:
Kommentarer
- Detta är bara ett fantastiskt svar! Jag hoppas Werner vann ' tänker på att jag inte kunde ' t men ändra det accepterade svaret till det här. Jag ' har problem när jag försöker
\renewcommand\neqtill den här versionen av\vneqdock. Mer specifikt får jag en " TeX-kapacitet överskred ". Någon aning varför? -
\vneq is using\ neq` i makro\@vneq. Således kan du lagra den gamla betydelsen:\let\ltxneq=\neqoch använda\ltxneqi\@vneq. Då ska du kunna omdefiniera\neq.
Svar
Ja:
\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}
För en motivation bakom kommandon i \vneq, läs egregs utmärkta handledning om \ooalign i \subseteq + \circ som en enda symbol (”öppen delmängd”)
Kommentarer
Svar
En förenklad lösning skulle vara
\usepackage{mathabx} \changenotsign
men detta skulle innebära att en stor del av matematiksymbolerna ändras, vilket inte är önskvärt eftersom jag, enligt min åsikt, några av de symboler som ges av mathabx är dåligt utformade.
En lösning med standardverktyg är
\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}
Jag använde \renewcommand eftersom det bara handlar om att ta bort koden för att återställa \neq till sin vanliga form.
Genom att använda \mathpalette, den skapade symbolen kommer att bli mindre i prenumerationer eller överskrift.
Kommentarer
- både den här symbolen och ett likhetstecken med en bakåtlutande annullering ingår i stix-teckensnitten.
- @barbarabeeton Ja, men dessa teckensnitt inte ' tm ix bra med Computer Modern och andra teckensnitt.
- sorgligt men sant. de var utformade för att blandas med tider, vilket var typsnittet för stipubkonsortiets medlemmar.
$$runt=som också blir viktigt när du har en annan text än matte teckensnitt.Annat än att detta är en mycket elegant lösning 🙂