我对 xetex 和 unicode 支持存在问题。我已加载 Segoe Script 作为字体,用于脚本的某些部分。但是,对于某些字符,它们有时显示错误。
我生成了一个最小示例。当我编译该示例时,一些 c 的变音符号奇怪地出现在顶部,而不是底部。
\c{c}
当我使用和\i
转义字符时,得到了相同的结果。
\documentclass{article}
\usepackage[turkish,shorthands=off]{babel}
\usepackage{fontspec}
\newfontfamily{\Segoe}{Segoe Script}
\begin{document}
\Segoe
Çift çakmak çıkmaz sonuç.
\c{C}ift \c{c}akmak \c{c}{\i}kmaz sonu\c{c}.
\end{document}
结果如下:
请注意,在第三和第四个单词中,变音符出现在字母的顶部。
为什么我会得到这个奇怪的结果,以及如何解决这个问题?
答案1
使用 Firefox 我得到
从
<!DOCTYPE html>
<html>
<head>
<meta charset='UTF-8'>
<style>
p.zz {font-family: Segoe Script}
</style>
<body>
<p>Çift çakmak çıkmaz sonuç.</p>
<p class="zz">Çift çakmak çıkmaz sonuç.</p>
</body>
</html>
所以这似乎是字体的一个错误。
看起来很难得到变音符,因为一个单独的ç已经显示了v形式,但是你可以强制使用\XeTeXglyph\XeTeXglyphindex"ccedilla"
\documentclass{article}
\usepackage[turkish,shorthands=off]{babel}
\usepackage{fontspec}
\newfontfamily{\Segoe}{Segoe Script}
\begin{document}
\Segoe
Çift çakmak çıkmaz sonuç.
\c{C}ift \c{c}akmak \c{c}{\i}kmaz sonu\c{c}.
Çift çakmak çıkmaz sonuç.
Çift çakmak \XeTeXglyph\XeTeXglyphindex"ccedilla" ıkmaz sonu\XeTeXglyph\XeTeXglyphindex"ccedilla" .
\end{document}