fontspec、XeTeX 和 LyX 中缺少字形

fontspec、XeTeX 和 LyX 中缺少字形

我在 Windows 上使用 XeTeX 和 fontspec 时,遇到了 LyX 中缺少字形的错误。错误是Missing character: There is no ^^C in font [lmroman10-regular]:mapping=tex-text;!

奇怪的是,LM Roman 10 字体实际上支持 Lambda 字符(https://fonts2u.com/lmroman10-regular.font)。

请帮忙!

TeX 中的 WME 是:

% Preview source code

%% LyX 2.3.1 created this file.  For more info, see http://www.lyx.org/.
%% Do not edit unless you really know what you are doing.
\documentclass[english]{article}
\usepackage[T1]{fontenc}

\makeatletter
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% User specified LaTeX commands.
\usepackage{fontspec}

\makeatother

\usepackage{babel}
\begin{document}
$\mathrm{\Lambda}$
\end{document}

LyX 中的 WME 只是添加\usepackage{fontspec}到序言中,并$\mathrm{\Lambda}$在文档正文中写入。

编辑:没有以下情况也会发生fontenc

% Preview source code

%% LyX 2.3.1 created this file.  For more info, see http://www.lyx.org/.
%% Do not edit unless you really know what you are doing.
\documentclass[english]{article}
\usepackage{fontspec}
\usepackage{polyglossia}
\setdefaultlanguage[variant=american]{english}
\begin{document}
$\mathrm{\Lambda}$
\end{document}

编辑2:已验证此问题也发生在 Ubuntu 上。

谢谢!

答案1

这有效:

\documentclass[english]{article}

\usepackage{babel}
\usepackage[no-math]{fontspec}

\begin{document}

$\mathrm{\Lambda}$

\end{document}

并且

\documentclass{article}

\usepackage[no-math]{fontspec}
\usepackage{polyglossia}

\setmainlanguage{english}

\begin{document}

$\mathrm{\Lambda}$

\end{document}

答案2

除了使用 选项加载外fontspecno-math您还可以unicode-math使用 来设置使用 Unicode 的数学字母表。您还可以使用 来设置mathastext希腊字母,或者在 XeLaTeX 中,mathspec或者对于旧版 NFSS 字体,isomath

您还可以将 Λ 复制并粘贴到您的 UTF-8 源中。

您收到有关缺少 003 个字符的消息的原因,或者^C,是因为这是旧版中 Λ 的字符槽OML 编码,但在 Unicode 字体中,0x03 是控制字符,control-C。

相关内容