Я пытаюсь использовать XeLaTeX с kpfonts-otf, но по какой-то причине пунктуация в надстрочных ссылках - "normalscript"(?), из-за чего ссылки выглядят немного неуместно.
МВЭ:
\documentclass{memoir}
%\usepackage[utf8]{inputenc} % for pdfLaTeX
%\usepackage[T1]{fontenc} % for pdfLaTeX
\usepackage{fontspec} %not in pdfLaTeX
\usepackage{kpfonts-otf} %without the "-otf" for pdfLaTeX
\usepackage{filecontents}
\usepackage[style=chem-angew]{biblatex}
\usepackage[]{biblatex}
\begin{filecontents}{test.bib}
@article{ref1,
author = {Latex, Lion},
year = {2024},
title = {How to tikz?},
}
@article{ref2,
author = {Duck, Writer},
year = {2023},
title = {duckuments},
}
\end{filecontents}
\addbibresource{test.bib}
\begin{document}
Citing \supercite{ref1, ref2}.
test math: $^{\textup{[]}}$
\printbibliography
\end{document}
В Lua/XeLaTeX вышеприведенное дает:
В формате pdfLaTeX:
В версиях Lua/XeLateX скобки и знаки препинания вокруг цифр в верхнем индексе по какой-то причине не являются верхними индексами?
Я пытался найти обходной путь, но ничего не нашел, поэтому любая помощь приветствуется.
решение1
Как упоминалось в комментариях, это ошибка в версии OTF Kpfonts (скобки и запятые отсутствуют в надстрочных индексах). Это исправлено в версии 0.63, которая была загружена на CTAN сегодня (2024/05/02), kpfonts-otf
теперь она должна поддерживать суперцитирование.
fakedscripts
В пакет также добавлена новая опция kpfonts-otf.sty
, она предотвращает загрузку realscripts.sty
(загружается по умолчанию), таким образом возвращаясь к тому, как pdflatex работает с надстрочными/подстрочными индексами (т. е. просто уменьшая соответствующий символ и перемещая его вверх или вниз). Таким образом, все символы, доступные в шрифте, могут использоваться как надстрочные/подстрочные индексы, но результат неоптимален; специально разработанные надстрочные/подстрочные индексы выглядят лучше… но доступен только ограниченный набор символов (обычно все цифры, все строчные буквы ASCII, некоторые разделители и т. д.). Сравните значение по умолчанию
и (с fakedscripts
опцией)
Обратите внимание, что realscripts
пакет предоставляет версии со звездочками \textsuperscript*{}
, и \textsubscript*{}
для ввода отсутствующих символов fi \textsuperscript*{\#}
выводит (поддельный) верхний индекс #, поскольку этот символ недоступен в качестве настоящего верхнего индекса в kpfonts
: