重音在参考书目/引文中未对齐

重音在参考书目/引文中未对齐

我遇到了一个奇怪的问题,书目条目中重音字符的重音位置不正确。考虑以下 MWE,其中引用的作者姓氏为 ,,Galí``:

%!TEX TS-program = xelatex
%!TEX encoding = UTF-8
\begin{filecontents*}{biblatextest.bib}
@Book{Gali2015,
  author    = {Gal{\'\i}, Jordi},
  title     = {Monetary policy, inflation, and the business cycle: an introduction to the new Keynesian framework and its applications},
  year      = {2015},
  edition   = {2},
  publisher = {Princeton University Press},
  location  = {Princeton and Oxford},
}
\end{filecontents*}
\documentclass{article}
\usepackage[style=bath,sorting=ynt]{biblatex}
\addbibresource{biblatextest.bib}
\begin{document}
    \noindent Here is a citation. Compare \cite[S.~123]{Gali2015}. 
    The author's name is Gal{\'\i}.
    \appendix
    \newrefcontext[sorting=nyt]%
    \printbibliography
\end{document}

比较一下引文和参考书目中重音的位置与常规文本中重音的位置:

,,Galí`` 中 i 重音不对齐的示例

我完全不知道为什么会发生这种情况,或者如何解决它。我很感激任何帮助、指示、提示、建议等。谢谢!

答案1

Biber 翻译\'\i成 Unicode 序列

U+0131 ı 拉丁文小写字母无点 I
U+0301 ́ 组合尖音符

拉丁现代字体似乎不喜欢这个(有效的)序列。

XeLaTeX 直接使用

U+00ED í 带有尖音符的拉丁文小写字母 I

这对于拉丁现代来说不是什么问题。

作为解决方法,您可以在文件中使用\'i或。两者都被 biber 视为 U+00ED。í.bib

实际上,整个过程与 biber 无关。如果在文件中直接使用这些 Unicode 序列tex,则在使用 Latin Modern 时会看到相同的问题。对于(某些)其他字体,情况并非如此:

%!TEX TS-program = xelatex
%!TEX encoding = UTF-8
\documentclass{article}
\usepackage{fontspec}
\begin{document}
Gal{\'i}
Gal{\'\i}
Galı́ % U+0131 ı LATIN SMALL LETTER DOTLESS I  U+0301 ́ COMBINING ACUTE ACCENT
Galí % U+00ED í LATIN SMALL LETTER I WITH ACUTE

\setmainfont{Noto Serif}
Gal{\'i}
Gal{\'\i}
Galı́ % U+0131 ı LATIN SMALL LETTER DOTLESS I  U+0301 ́ COMBINING ACUTE ACCENT
Galí % U+00ED í LATIN SMALL LETTER I WITH ACUTE
\end{document}

结果:

在此处输入图片描述

相关内容