![Biblatex 和 newtxttext 一起使用时无法正确产生某些重音](https://linux22.com/image/447413/Biblatex%20%E5%92%8C%20newtxttext%20%E4%B8%80%E8%B5%B7%E4%BD%BF%E7%94%A8%E6%97%B6%E6%97%A0%E6%B3%95%E6%AD%A3%E7%A1%AE%E4%BA%A7%E7%94%9F%E6%9F%90%E4%BA%9B%E9%87%8D%E9%9F%B3.png)
我正在为我的项目使用newtxtext
和biblatex
后端biber
。但我注意到参考书目中缺少一些重音符号(如 Erd\H{o}s)。这是一个带有屏幕截图的极简示例。(使用 XeLaTeX 和 TeXLive 2020 或 2021)
\documentclass{article}
\usepackage{newtxtext}
\usepackage[backend=biber, style=alphabetic, defernumbers=true, hyperref=auto, backref=true, giveninits=true]{biblatex}
\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@article{erdos1983greatest,
title={The greatest angle among $n$ points in the $d$-dimensional Euclidean space},
author={Erd\H{o}s, P. and F{\"u}redi, Z.},
journal={Annals of Discrete Mathematics},
volume={17},
pages={275--283},
year={1983},
publisher={Citeseer}
}
\end{filecontents*}
\addbibresource{\jobname.bib}
\begin{document}
Paul Erd\H{o}s published the paper \cite{erdos1983greatest}.
\printbibliography
\end{document}
请注意,主体中的重音已正确显示。
我几乎可以肯定这是newtxtext
的问题,因为一旦我将其版本从 1.64 升级到 1.70/71(最新版本),问题就消失了。但是,由于其他一些兼容性问题,我不想这样做(新版本破坏了我的其他字体设置,并且我正在pst-xxx
使用的一些软件包在 TeXLive 2021 中不起作用)。有没有什么解决方法?
答案1
在您的主文档中,您将字符定义为\H{o}
适用于旧版本的newtxtext
,但 Biber 用实际的 ő 替换它,而这是一个缺失的字符。
解决方法:用 自己定义角色\newunicodechar
。
\documentclass{article}
\usepackage{newtxtext}
\usepackage{newunicodechar}
\newunicodechar{ő}{\H{o}}
\usepackage[backend=biber, style=alphabetic, defernumbers=true, hyperref=auto, backref=true, giveninits=true]{biblatex}
\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@article{erdos1983greatest,
title={The greatest angle among $n$ points in the $d$-dimensional Euclidean space},
author={Erd\H{o}s, P. and F{\"u}redi, Z.},
journal={Annals of Discrete Mathematics},
volume={17},
pages={275--283},
year={1983},
publisher={Citeseer}
}
\end{filecontents*}
\addbibresource{\jobname.bib}
\begin{document}
Paul Erd\H{o}s published the paper \cite{erdos1983greatest}.
\printbibliography
\end{document}
这是四年前的字体包版本:
(/usr/share/texlive/texmf-dist/tex/latex/newtx/newtxtext.sty
Package: newtxtext 2018/03/27 v1.531
`newtxtext' v1.531, 2018/03/27 Text macros taking advantage of TeX-Gyre Termes
fonts (msharpe)