Est-il possible dobtenir un \neq
mais avec une verticale barre au lieu dun incliné? Il existe des opérateurs dinégalité comme AMS « s \gvertneqq
qui présentent ce type de » pas égal « mais pas sans le mélanger avec dautres signes.
\documentclass[a5paper]{article} \usepackage{amssymb} \usepackage{amsmath} \begin{document} \begin{align*} a&\gvertneqq b\\ C&\neq \varnothing \end{align*} \end{document}
Donc ce que je voudrais fondamentalement, cest le symbole isolé sous le> dans le \gvertneqq
ci-dessus. Surtout parce que je naime pas les différentes pentes des barres obliques de la deuxième ligne et que « ≠ ∅ » est une combinaison assez courante.
Réponse
Signe égal avec ligne verticale
La ligne verticale |
est un peu haute pour mon goûter. La définition suivante pour \vneq
diminue la hauteur totale de la ligne verticale pour quelle corresponde à la hauteur totale de \neq
. Le redimensionnement de la hauteur verticale ne changera pas lépaisseur de la ligne dans le sens horizontal.
- Lespace final et la hauteur de la ligne verticale peuvent être affinés en redéfinissant les macros
\vneqxscale
et\vneqyscale
. La valeur par défaut est1
. -
\mathpalette
permet au symbole de se redimensionner automatiquement.
Exemple de fichier:
\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}
La hauteur peut encore être diminuée, par exemple
\renewcommand*{\vneqyscale}{.8}
Résultat pour mathabx
:
Résultat pour txfonts
:
Résultat pour MnSymbol
:
Ici, la ligne verticale est trop épaisse et le le redimensionnement horizontal doit être réduit:
Résultat pour MnSymbol
et \vneqxscale
= .67
:
Alternative à varnothing
Au lieu de changer \neq
, le symbole densemble vide \varnothing
pourrait être construit en utilisant \not
pour correspondre à la pente des lignes verticales inclinées. Cependant, \circ
est trop petit et \bigcirc
trop grand. Par conséquent, cette méthode est indiquée pour txfonts
qui fournit \medcirc
et MnSymbol
avec \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}
Résultat pour txfonts
:
Résultat pour MnSymbol
:
Commentaires
- Cest juste une réponse incroyable! Jespère que Werner naura ' pas lesprit que je ne pourrais pas ' t mais changer la réponse acceptée en celle-ci. Je ' rencontre des problèmes en essayant de
\renewcommand
\neq
vers cette version de\vneq
cependant. Plus précisément, jobtiens une capacité de " TeX dépassée ". Une idée de pourquoi? -
\vneq is using
\ neq` dans la macro\@vneq
. Ainsi, vous pouvez stocker lancienne signification:\let\ltxneq=\neq
et utiliser\ltxneq
dans\@vneq
. Vous devriez alors pouvoir redéfinir\neq
.
Réponse
Oui:
\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}
Pour une motivation derrière le commandes dans \vneq
, lisez lexcellent tutoriel degreg sur \ooalign
dans \subseteq
+ \circ
sous forme de symbole unique (« sous-ensemble ouvert »)
Commentaires
Réponse
Une solution simpliste serait
\usepackage{mathabx} \changenotsign
mais cela signifierait changer une grande partie des symboles mathématiques, ce qui nest pas souhaitable car, à mon avis, certains des symboles fournis par mathabx
sont mal conçus.
Une solution avec des outils standard est
\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}
Jai utilisé \renewcommand
car il sagira simplement de supprimer ce code pour rétablir \neq
sa forme habituelle.
En utilisant \mathpalette
, le symbole créé deviendra plus petit en indices ou en exposants.
Commentaires
- ce symbole et un signe égal avec une annulation inclinée vers larrière sont inclus dans les polices stix.
- @barbarabeeton Oui, mais ces polices ne ' tm ix bien avec Computer Modern et dautres polices.
- triste mais vrai. ils ont été conçus pour se mélanger avec le temps, ce qui était la police de caractères consensuelle des membres du consortium stipub.
$$
autour du=
également, ce qui devient important lorsque vous avez un texte différent de la police mathématique.Autre que cela, cest une solution des plus élégantes 🙂