使用 metalogo 和 XeLaTeX 软件包时,在字母上方输入两个点时发生错误

使用 metalogo 和 XeLaTeX 软件包时,在字母上方输入两个点时发生错误
\documentclass{article}
\usepackage{metalogo}

\begin{document}
\"A \"b \"U \XeLaTeX  \LaTeX
\end{document}

在此处输入图片描述

在此处输入图片描述

答案1

除了在使用 XeLaTeX 时加载的原因之外,该metalogo包不参与此项工作。fontspec

该错误在于 XeTeX 在多种字体中如何管理组合分音符。fontspec加载时,命令\"b会执行b^^^^0308(其中 U+0308 为组合分音符)。

例子:

\input ifluatex.sty
\ifluatex \input luaotfload.sty \fi

\font\testA="Linux Libertine O"
\font\testB="Latin Modern Roman"
\font\testC="erewhon"
\font\testD="fbb"

\testA

A^^^^0308 b^^^^0308

\testB

A^^^^0308 b^^^^0308

\testC

A^^^^0308 b^^^^0308

\testD

A^^^^0308 b^^^^0308

\bye

这是 XeTeX 的输出:

在此处输入图片描述

这是使用 LuaTeX 的输出(甚至更糟糕):

在此处输入图片描述

我不确定问题出在哪里,因为“b U+0308”组合在其他软件中可以正确呈现:

在此处输入图片描述

相关内容