如何在 LaTeX 中插入直立三角符号?

如何在 LaTeX 中插入直立三角符号?

我需要插入直立的三角洲符号在此处输入图片描述

但我这样做了

\documentclass{article}
\usepackage{amsmath}
\begin{document}
$\mathrm{\delta}^{18}\mathrm{O}$

\end{document}

在此处输入图片描述三角洲符号不太直立?那么我该如何得到一个直立的三角洲符号呢?

答案1

(我重写了答案,以避免给人留下任何印象,即我可能以某种方式声称一个 LaTeX 化学软件包可能比另一个“更好”。要全面了解各种 LaTeX 化学软件包的优缺点,请查看帖子排版化学式

首先,假设“凸起的 18 个直立大写字母 O”表示氧的某种同位素,我强烈建议您使用 LaTeX 化学软件包的宏来排版化学公式和方程式。例如,您可以加载软件包mhchem并使用其\ce宏。

其次,对于直立三角符号,如何进行取决于您使用的文本和数学字体系列:

  • 如果您的文档使用默认字体(Computer Modern),您可以加载upgreek包并使用该包的\updelta宏而不是\delta

  • 如果您希望在文档中使用 Times Roman 字体(我提出这一点是因为 OP 的屏幕截图中显示的字形看起来像是 Times Roman 系列的字体),您可以通过加载newtxtextnewtxmath包来实现。幸运的是,\newtxmath还提供了一个名为的宏\updelta,您可以将其用于化学公式。

  • 根据该mhchem软件包的用户指南,除了upgreek和 之外,其他\newtxmath提供对调用的宏的访问的软件包\updelta还有textgreekkpfontsmathdesignfourier、和。textalphanewpxmathunicode-math

  • 有趣的是,如果加载了其中一个字体包,\ce宏将自动地\updelta在评估表达式时,使用直立的希腊字母——这里—— \ce{\delta^18O}

在此处输入图片描述

我认为直立小写 delta 符号后面的微小间隙有助于澄清我们不是在处理“delta 的 18 次方”。

\documentclass{article} % or some other suitable document class
\usepackage{newtxtext,newtxmath} % Times Roman fonts (text and math)
\usepackage{mhchem} % for \ce macro

\begin{document}
$\delta$ vs.\ $\updelta$

$\updelta\ce{^18O}$

\ce{\delta^18O} % note use of "\delta" _inside_ "\ce"
\end{document}

答案2

使用包upgreek,然后使用\updelta

\documentclass{article}
\usepackage{upgreek}
\begin{document}
$\updelta^{18} \mathrm{O}$
\end{document}

这将为您提供以下内容:

在此处输入图片描述

答案3

unicode-math软件包提供了\updelta\mupdelta\symup{\delta}。它需要 LuaLaTeX 或 XeLaTeX。我建议您尽可能使用这个,如果必须的话,使用传统的 8 位数学字体。

如果必须的话,许多其他软件包也提供\updelta\deltaup

只有两种 8 位 TeX 编码支持直立希腊小写字母:OML(包含拉丁和希腊数学符号)和 LGR(涵盖多音希腊语)。您可以加载 OML 编码的直立字体,isomath然后\mathrm{\delta}按照您的想法使用。Math Design 字体是仅有的一些支持直立小写希腊语的 8 位数学字体。

\documentclass{article}
\usepackage{amsmath}
\usepackage[utopia]{mathdesign}
\usepackage[rmdefault=mdput, OMLmathrm]{isomath}

\begin{document}
\begin{align*}
  &\mathrm{\delta}^{18}\mathrm{O} \\
  &\delta^{18}\mathrm{O}
\end{align*}

数学设计乌托邦样本

以上使用mdput或 Math Design Utopia,后者也与 兼容fourier。可用选项(Math Design Garamond、Utopia 或 Charter)包括记录在isomath手册第 4.2.2 节中。

如果您想使用除这些之外的 8 位字体,则应将其声明为符号字母表。由于 Euler 对其希腊字母和拉丁字母使用与标准 OML 相同的映射,但从技术上讲被声明为编码U,因此上述内容不适用于 Euler,但以下内容可以:

\documentclass{article}
\usepackage{amsmath}
\usepackage{mathpazo}

\DeclareMathAlphabet{\mathrm}{U}{zeur}{m}{n}
\SetMathAlphabet{\mathrm}{bold}{U}{zeur}{b}{n}

\begin{document}
\begin{align*}
  &\mathrm{\delta}^{18}\mathrm{O} \\
  &\delta^{18}\mathrm{O}
\end{align*}
\end{document}

Palatino + AMS Euler 示例

几点说明:Hermann Zapf 最初设计 AMS Euler 是为了补充 Concrete 字体(用于 DEK 的书,具体数学),但他也设计了 Palatino 和 Optima,它们也是对它的极好补充。您可能还希望使用不同的字母来表示直立的数学符号,也许称之为\symup,而\mathrm对于诸如 之类的文本则保持不变if

如果您的 8 位字体的直立希腊字母位于不同的位置,则应首先寻找定义符号(例如)的包\updelta,例如upgreek。但是,大多数希腊文本字体都没有这些符号。这个最小示例展示了如何使用 LGR 编码字体(Tempora,Times 的补充,但对于实际实际使用,您可能需要newtxmath这个)来实现这一点。

documentclass{article}
\usepackage[LGR,T1]{fontenc}
\usepackage{amsmath}
\usepackage{mathptmx}

\DeclareSymbolFont{elup}{LGR}{Tempora-TLF}{m}{n}
\SetSymbolFont{elup}{bold}{LGR}{Tempora-TLF}{b}{n}

\DeclareMathSymbol{\updelta}{\mathalpha}{elup}{"64}

\begin{document}
\begin{align*}
  &\updelta^{18}\mathrm{O} \\
  &\delta^{18}\mathrm{O}
\end{align*}
\end{document}

时代 + Tempora 样本

这也适用于 Computer Modern:

\documentclass{article}
\usepackage[LGR,T1]{fontenc}
\usepackage{amsmath}

\DeclareSymbolFont{elup}{LGR}{cmr}{m}{n}
\SetSymbolFont{elup}{bold}{LGR}{cmr}{b}{n}

\DeclareMathSymbol{\updelta}{\mathalpha}{elup}{"64}

\begin{document}
\begin{align*}
  &\updelta^{18}\mathrm{O} \\
  &\delta^{18}\mathrm{O}
\end{align*}
\end{document}

计算机现代样本

LGR 和 OML 的布局已记录在“LaTeX 字体编码”中否则,特定的包可能会记录其自己的自定义编码。

最后,您可以在数学模式下使用任何 LGR 编码的希腊文本字体(例如来自希腊字体协会的字体)和该mathastext包。

答案4

简单:想要吗?写吧。用 xelatex 或 lualatex 编译并使用合适的字体:

\documentclass{article}
\usepackage{fontspec}
\setmainfont{Linux Libertine O}
\def\su#1{\textsuperscript{#1}}

\begin{document}
 δ\su{81} O

%想要斜体吗?好的!

{\it δ} \su{81} O
\end{document}

相关内容