Eulervm 和 LuaLaTeX 导致数学运算符前端错误

Eulervm 和 LuaLaTeX 导致数学运算符前端错误

我注意到如果使用 LuaLaTeX,数学运算符的字体会错误。

在此处输入图片描述

如果我申请使固定来自@egreg 的口音是错误的:

在此处输入图片描述

MWE 如下:

% !TeX program = lualatex
% !TeX encoding = UTF-8
\documentclass[]{article}

\usepackage{amsmath}   
\usepackage{ebgaramond}
\usepackage[euler-digits,small,OT1]{eulervm}

% fix the font used for operators and \mathrm
\usepackage{fontspec}
\DeclareSymbolFont{operators}{\encodingdefault}{\familydefault}{m}{n}

\begin{document}
\begin{equation*}
    \sin \hat{x} \tilde{x} \quad \text{sin}
\end{equation*}
\end{document}

答案1

您可以为操作员使用旧字体:

\documentclass[]{article}

\usepackage{amsmath}   
\usepackage{ebgaramond}
\usepackage[euler-digits,small,OT1]{eulervm}

\usepackage{fontspec}
\DeclareSymbolFont{operators}{OT1}{EBGaramond-TLF}{m}{n}

\begin{document}
\begin{equation*}
1+ \sin \hat{x} \tilde{x} \quad \text{sin}
\end{equation*}

\end{document}

在此处输入图片描述

或者,仅对重音符号使用旧式字体。

\documentclass[]{article}

\usepackage{ebgaramond}
\usepackage[euler-digits,small,OT1]{eulervm}
\usepackage{fontspec}

\DeclareSymbolFont{operators}{\encodingdefault}{\familydefault}{m}{n}
\DeclareSymbolFont{accents}{OT1}{EBGaramond-TLF}{m}{n}

\DeclareMathAccent{\acute}{\mathalpha}{accents}{"13}
\DeclareMathAccent{\grave}{\mathalpha}{accents}{"12}
\DeclareMathAccent{\ddot}{\mathalpha}{accents}{"7F}
\DeclareMathAccent{\tilde}{\mathalpha}{accents}{"7E}
\DeclareMathAccent{\bar}{\mathalpha}{accents}{"16}
\DeclareMathAccent{\breve}{\mathalpha}{accents}{"15}
\DeclareMathAccent{\check}{\mathalpha}{accents}{"14}
\DeclareMathAccent{\hat}{\mathalpha}{accents}{"5E}
\DeclareMathAccent{\dot}{\mathalpha}{accents}{"5F}
\DeclareMathAccent{\mathring}{\mathalpha}{accents}{"17}

\usepackage{amsmath}

\begin{document}
\begin{equation*}
1+ \sin \hat{x} \tilde{x} \quad \text{sin}
\end{equation*}

\end{document}

答案2

您可以使用新欧拉unicode-math

相关内容