XeLaTeX 无法正确映射带有变音符号的字母?

XeLaTeX 无法正确映射带有变音符号的字母?

我发现 XeLaTeX 无法正确映射带有两个以上变音符号的字母。例如,\v{\"{u}}\v{ü}无法正确生成预期的 ǚ。我尝试过很多字体,所以我认为这可能不依赖于字体。有什么巧妙的方法可以解决这个问题吗?谢谢!

答案1

这当然取决于字体。以下是我的 Mac 电脑上的选择。

% !TEX TS-program = XeLaTeX

\documentclass[12pt]{article}
\usepackage{fontspec}
\defaultfontfeatures{Ligatures=TeX}
\newfontfamily\libertine{Linux Libertine O}
\newfontfamily\times{Times New Roman}
\newfontfamily\charis{Charis SIL}
\newfontfamily\minion{Minion Pro}
\newfontfamily\luxiserif{Luxi Serif}
\newfontfamily\biolinum{Linux Biolinum O}
\newfontfamily\lmr{Latin Modern Roman}
\newfontfamily\junicode{Junicode}
\newfontfamily\cambria{Cambria}
\newfontfamily\arialmt{Arial Unicode MS}
\newfontfamily\doulos{Doulos SIL}
\newcommand{\testchar}{\v{\"{u}} or \v{ü}}
\begin{document}
\begin{tabular}{lr}
Linux Libertine O &{\libertine\testchar}\\
Junicode & {\junicode\testchar}\\
Charis SIL &{\charis\testchar}\\
Doulos SIL & {\doulos\testchar}\\
Latin Modern &{\lmr\testchar}\\
Times New Roman &{\times\testchar}\\
Minion Pro &{\minion\testchar}\\
Luxi Serif & {\luxiserif\testchar}\\
Linux Biolinum O & {\biolinum\testchar}\\
Cambria & {\cambria\testchar}\\
Arial Unicode MS & {\arialmt\testchar}
\end{tabular}
\end{document}

代码输出

相关内容