我发现\leqslant
命令 比 产生更好的输出\leq
。但是,对于理想/正规子群符号,有一个\trianglelefteq
(或\unlhd
),但没有倾斜版本。
包装本身mathabx
改变了\trianglelefteq
,而且还使三角形变得狭窄,这让我不太高兴。
还有其他解决办法吗?
答案1
在这里,我将 堆叠\rule
在 之上,\leqslant
以便制作\trianglelefteqslant
,而无需使用mathabx
包。通过使用scalerel
包的功能,它可以跨数学样式工作。
\documentclass{article}
\usepackage{amssymb}
\usepackage{stackengine,scalerel}
\stackMath
\def\trianglelefteqslant{\ThisStyle{\mathrel{%
\stackinset{r}{.75pt+.15\LMpt}{t}{.1\LMpt}{\rule{.3pt}{1.1\LMex+.2ex}}{\SavedStyle\leqslant}%
}}}
%\usepackage{mathabx}
\begin{document}
$x \leqslant y$\par
$x \trianglelefteqslant y$\par
$\scriptstyle x \trianglelefteqslant y$\par
$\scriptscriptstyle x \trianglelefteqslant y$
\end{document}
答案2
我不太确定这是否更好看(但我\leqslant
也不喜欢)。
也许你会想到一个比 更好的名字\slunlhd
。;-)
\documentclass{article}
\usepackage{amssymb}
\makeatletter
\newcommand{\slunlhd}{%
\mathrel{\mathpalette\sl@unlhd\relax}%
}
\newcommand{\sl@unlhd}[2]{%
\sbox\z@{$#1\lhd$}%
\sbox\tw@{$#1\leqslant$}%
\dimen@=\ht\tw@
\advance\dimen@-\ht\z@
\ifx#1\displaystyle
\advance\dimen@ .2pt
\else
\ifx#1\textstyle
\advance\dimen@ .2pt
\fi
\fi
\ooalign{\raisebox{\dimen@}{$\m@th#1\lhd$}\cr$\m@th#1\leqslant$\cr}%
}
\makeatother
\begin{document}
$N\slunlhd G_{\slunlhd}$
\Large
$N\slunlhd G_{\slunlhd}$
\end{document}
基本上,我将\leqslant
其叠加\lhd
(对文本和显示样式进行了小幅修正)。
答案3
我从第16页找到一种方法symbol-a4
。它需要stmaryrd
Package,命令是\trianglelefteqslant
和\trianglerighteqslant
。
\documentclass{article}
\usepackage{stmaryrd}
\begin{document}
$x \trianglelefteqslant y$
\end{document}