如何制作老式的“远小于/大于”(< 和 >>)符号?

如何制作老式的“远小于/大于”(< 和 >>)符号?

如何老套“少得多(或多得多)” –<<>>– 符号:

在此处输入图片描述

能做到吗?我还没有成功http://detexify.kirelabs.org

请注意,我不想要常见的\ll&\gg符号。

答案1

mathabx包提供此字形为\lll(和相应的\ggg)。但是,mathabx更改很多符号。如果你只想要这两个,你可以轻松地从从不同字体导入单个符号

\documentclass{article}

\DeclareFontFamily{U}{matha}{\hyphenchar\font45}
\DeclareFontShape{U}{matha}{m}{n}{
      <5> <6> <7> <8> <9> <10> gen * matha
      <10.95> matha10 <12> <14.4> <17.28> <20.74> <24.88> matha12
      }{}
\DeclareSymbolFont{matha}{U}{matha}{m}{n}

\DeclareMathSymbol{\Lt}{3}{matha}{"CE}
\DeclareMathSymbol{\Gt}{3}{matha}{"CF}

\begin{document}

$a \ll b \Lt c \Gt d \gg e$

\end{document}

在此处输入图片描述

编辑评论中提醒我,\lll\ggg也在(和其他数学字体包)中定义amssymb以执行其他操作。名称\Lt, \Gt(来自stix.unicode-math和其他)避免了此类冲突。

Davislor 的回答很好还展示了如何从stix字体导入这些符号,尽管在这种情况下我会完全切换字体。在现代计算机环境中,我发现这些mathabx符号更合适。

答案2

如果您使用stix,这里有一个版本,可以创建newcommand并旋转符号以提供您想要的内容。

\documentclass{article}
\usepackage{graphicx}
\usepackage{stix}
\newcommand{\lWedge}{\mathbin{\rotatebox[origin=c]{90}{$\Wedge$}}}
\newcommand{\gWedge}{\mathbin{\rotatebox[origin=c]{-90}{$\Wedge$}}}
\begin{document}

$\lWedge$
$\gWedge$
$\Wedge$
$\Vee$

\end{document}

在此处输入图片描述

编辑: Lt并且Gt存在,所以无需旋转。

答案3

这些字符在 Unicode 中为 U+2AA1,⪡ 为 U+2AA2。它们具有宏名称\Lt,并且\Gtunicode-math(規劃第 74-75 页)、stix包(第 16 页)、stix2包(第 16 页) ,以及至少一个其他。

OpenType 字体 XITS Math、Stix Two Math、Asana Math、GFS Neohellenic Math 和 Cambria Math 都包含字形,可以使用unicode-math以下命令仅填充这些字符:

\setmathfont[range={`⪡,`⪢}, Scale=MatchUppercase]{Asana Math}

与 LuaLaTeX 或 XeLaTeX 配合使用的代码示例:

\documentclass[varwidth, preview]{standalone}

\usepackage{unicode-math}

\setmainfont{STIX Two Text}
\setmathfont{STIX Two Math}

\begin{document}
\( \delta \Lt h \Gt \epsilon \)
\end{document}

Stix Two数学

并且可以与任何 LaTeX 引擎配合使用:

\documentclass[varwidth, preview]{standalone}

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{stix}

\begin{document}
\( \delta \Lt h \Gt \epsilon \)
\end{document}

斯蒂克斯

如果您被迫使用不包含这些符号的旧版 NFSS 字体包,您可能能够\usepackage{stix}在其他字体包之前加载。但是,当另一个包不兼容时(可能是因为您用完了 LaTeX 数学字母表)并且您需要使用 声明它们时\DeclareMathSymbol,您可以通过一点逆向工程来完成。以下模板声明\Lt\Gt以供使用newtxmath

\documentclass[varwidth, preview]{standalone}

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{newtxtext}
\usepackage{newtxmath}

\DeclareFontEncoding{LS1}{}{}
\DeclareFontSubstitution{LS1}{stix}{m}{n}
\DeclareSymbolFont{stixsymbb}{LS1}{stixbb}{m}{n}

\DeclareMathSymbol{\Lt}{\mathrel}{stixsymbb}{"F1}
\DeclareMathSymbol{\Gt}{\mathrel}{stixsymbb}{"F2}

\begin{document}
\( \delta \Lt h \Gt \epsilon \)
\end{document}

newtxmath 加 stix

请注意,这是一个人为的例子,用于获取newtx字体和所有符号的实际代码stix实际上是:

\usepackage{stix}
\usepackage{newtxtext}
\usepackage{newtxmath}

如果您没有使用 UTF-8 字符,您还可以插入以下几行,以便能够直接在文档中使用 UTF-8 字符unicode-math(开箱即用):

\usepackage{newunicodechar}

\newunicodechar{⪡}{\ensuremath{\Lt}}
\newunicodechar{⪢}{\ensuremath{\Gt}}

为了完整性:该boisik包还定义了\Lt\Gt,但(截至 2018 年)仅作为位图字体提供。因此,它可能不是一个可接受的选项。

正如另一个答案所指出的那样,mathabx包含类似的字形,但将它们声明为\lll\ggg这是一个严重的设计缺陷并且在迁移到其他样式表时会导致输出不正确。在标准 AMS 字体unicode-math和其他几个常见软件包中,\lll⋘。三倍小于,\ggg⋙。三倍大于。

我建议将其unicode-math作为第一个选项和stix第二个选项。如果您想从 加载字形mathabx,我会使用 campa 的答案,修改后将名称更改为更标准\Lt\Gt

答案4

另一种奇怪的方法(没有导入字体)是使用负细空格字符\!

\documentclass[varwidth, preview]{standalone}
\newcommand{\mll}{<\!\!\!<} % change the number of \! characters to move closer/farther

\begin{document}
\( \delta \mll h \ll \epsilon \)
\end{document}

相关内容