Neo Euler 不会显示希腊字母

Neo Euler 不会显示希腊字母

我正在尝试在使用 XeLaTeX 编译的文档中使用 Neo Euler 数学字体:

\documentclass{scrartcl}
\usepackage{amsmath}
\usepackage{blindtext}
\usepackage{unicode-math}
\setmainfont{Palatino LT Std}
\setmathfont{Neo Euler}

\begin{document}
\blindtext
\begin{align*}
    F(\lambda) = \sum_{u = -\infty}^{\infty}a_{u}\exp (i2\pi \lambda u)
\end{align*}
\end{document}

但是,它不会显示希腊字母 Pi 和 Lambda。相反,我得到的是:

希腊字母不显示

将主字体设置为 Palatino 效果明显,从盲文中可以看出。我euler.otfhttps://github.com/khaledhosny/euler-otf并将其复制到我的/Library/Fonts/目录中(我在 OS X 10.9 上)。

谢谢!

答案1

您只能使用直立的希腊字母:

\setmathfont[math-style=upright,vargreek-shape=unicode]{Neo Euler}

答案2

如果您只想使用 Euler 来表示直立的数学字母(您可能希望使用 ISO 样式),这也是可行的。以下是在 XeLaTeX 或 LuaLaTeX 中以 ISO 样式设置 Euler 恒等式的示例:

\documentclass[varwidth, preview]{standalone}

\usepackage{mathtools}
\usepackage{unicode-math}

\defaultfontfeatures{Scale=MatchLowercase}
\setmainfont{TeX Gyre Pagella}[
  Scale=1.0,
  Ligatures={Common, Discretionary, TeX}]
\setmathfont{Asana Math}
\setmathfont[range={up/{Latin,latin,Greek,greek},
                    bfup/{Latin,latin,Greek,greek},
                    cal, bfcal, frak, bffrak},
              script-features={},
              sscript-features={}
            ]{Neo Euler}

\newcommand\upi{\symup{i}}
\newcommand\upe{\symup{e}}

\begin{document}
\begin{align*}
  \upe^{\upi x} &= \cos{x} + \upi \sin{x} \\
  \upe^{\upi \uppi} + 1 &= 0
\end{align*}
\end{document}

欧拉恒等式

这里,除了直立和粗体直立字母之外的所有内容都取自 Asana Math(基于newpx)。运算符名称默认取自文本字体,这是另一个 Palatino 克隆。

具体来说,你会注意到,虚数单位 i 是在 Neo Euler 中设置的,但 sin 中的 i 和数字是在 Palatino 中设置的,变量X是斜体帕拉蒂诺体。

如果您想使用更多 Neo Euler,可以将其添加到列表中range=。由于它不完整且不再更新,您需要在它之前加载另一种数学字体,作为它不包含的符号的后备。Neo Euler 中的完整符号集是:

\setmathfont[range={"0000-"0001,"0020-"007E,
                    "00A0,"00A7-"00A8,"00AC,"00AF,"00B1,"00B4-"00B5,"00B7,
                    "00D7,"00F7,
                    "0131,
                    "0237,"02C6-"02C7,"02D8-"02DA,"02DC,
                    "0300-"030C,"030F,"0311,"0323-"0325,"032E-"0332,"0338,
                    "0391-"0393,"0395-"03A1,"03A3-"03A8,"03B1-"03BB,
                    "03BD-"03C1,"03C3-"03C9,"03D1,"03D5-"03D6,"03F5,
                    "2016,"2018-"2019,"2021,"2026-"202C,"2032-"2037,"2044,
                    "2057,"20D6-"20D7,"20DB-"20DD,"20E1,"20EE-"20EF,
                    "210B-"210C,"210E-"2113,"2118,"211B-"211C,"2126-"2128,
                    "212C-"212D,"2130-"2131,"2133,"2135,"2190-"2199,
                    "21A4,"21A6,"21A9-"21AA,"21BC-"21CC,"21D0-"21D5,
                    "2200,"2202-"2209,"220B-"220C,"220F-"2213,"2215-"221E,
                    "2223,"2225,"2227-"222E,"2234-"2235,"2237-"223D,
                    "2240-"224C,"2260-"2269,"226E-"2279,"2282-"228B,"228E,
                    "2291-"2292,"2295-"2299,"22A2-"22A5,"22C0-"22C5,
                    "22DC-"22DD,"22EF,"22F0-"22F1,
                    "2308-"230B,"2320-"2321,"2329-"232A,"239B-"23AE,
                    "23DC-"23DF,
                    "27E8-"27E9,"27F5-"27FE,"2A0C,"2B1A,
                    "1D400-"1D433,"1D49C,"1D49E-"1D49F,"1D4A2,"1D4A5-"1D4A6,
                    "1D4A9-"1D4AC,"1D4AE-"1D4B5,"1D4D0-"1D4E9,"1D504-"1D505,
                    "1D507-"1D50A,"1D50D-"1D514,"1D516-"1D51C,"1D51E-"1D537,
                    "1D56C-"1D59F,"1D6A8-"1D6B8,"1D6BA-"1D6D2,"1D6D4-"1D6DD,
                    "1D6DF,"1D6E1,"1D7CE-"1D7D7
                   }]{Neo Euler}

与 PDFLaTeX 兼容的示例版本是:

\documentclass[varwidth, preview]{standalone}

\usepackage[T1]{fontenc}
\usepackage{textcomp}
\usepackage[utf8]{inputenc} % The default since 2018
\usepackage{mathtools}
\usepackage{newpxtext, newpxmath}
% If you also want to load Euler Script and Fraktur, you want mathalfa.

\DeclareSymbolFont{eulerup}{U}{zeur}{m}{n}
\DeclareMathSymbol{\uppi}{\mathalpha}{eulerup}{"19}
\DeclareMathSymbol{\upi}{\mathalpha}{eulerup}{"69}
\DeclareMathSymbol{\upe}{\mathalpha}{eulerup}{"65}

\begin{document}
\begin{align*}
  \upe^{\upi x} &= \cos{x} + \upi \sin{x} \\
  \upe^{\upi \uppi} + 1 &= 0
\end{align*}
\end{document}

您需要创建任何其他常量,例如\uppi您自己。字体表在amsfonts文档中给出,但它与 OML 相同。

该包是欧拉数学的一个简单替代方案,其中包含 Palatino(newpx)或 Optima(URW Classico)文本eulerpx

相关内容