Ich habe eine Datei, die eine Times-ähnliche Schriftart lädt, und dann ein Paket, das die Schriftart im Mathematikmodus verwendet. Alles funktioniert einwandfrei, wenn das pdflatex
korrekte Kerning von \operatorname{} berücksichtigt wird.
% To be processed with pdflatex
\documentclass{report}
\usepackage{mathptmx}
\usepackage{amsmath}
\usepackage[lite]{mtpro2}
\begin{document}
\[
\operatorname{Diff}^r \quad \mathrm{f}^r \quad {f}^r \quad \mathcal{C}^r
\]
\end{document}
aber wenn ich das gleiche Setup xelatex
mit einer Datei wie dieser versuche:
% To be processed with xe-lua-latex:
\documentclass{report}
%\usepackage[no-math]{fontspec}
\usepackage{fontspec}
\setmainfont[Ligatures=TeX]{Times New Roman}
\usepackage{amsmath}
\usepackage{mtpro2}
\begin{document}
\[
\operatorname{Diff}^r \quad \mathrm{f}^r \quad {f}^r \quad \mathcal{C}^r
\]
\end{document}
Das Unterschneiden des Inhalt ist fehlerhaft \operatorname{}
und \mathrm{}
geht verloren, auch wenn andere Unterschneidungen in Ordnung sind.
Ich würde gerne verstehen, warum \mathrm{}
alles schiefgeht.
Antwort1
Ihr pdflatex-Beispiel wird bei mir nicht ohne Fehler kompiliert – es ist meiner Meinung nach keine gute Idee, sowohl mathptmx als auch mtpro2 zu laden.
Aber abgesehen davon:
- Es wird kein Kerning verwendet: Die Zeichen stammen aus unterschiedlichen Schriftarten.
- Sie müssen nur die Schriftarten „PDFLATEX Times“ und „Times New Roman“ vergleichen, um zu verstehen, warum beispielsweise der Abstand zwischen den Buchstaben f unterschiedlich ist:
\documentclass{report}
\usepackage{ifxetex}
\ifxetex
\usepackage{fontspec}
\setmainfont[Ligatures=TeX]{Times New Roman}
\else
\usepackage{mathptmx}
\fi
\begin{document}
\fboxsep0pt
\fbox{f}
\end{document}
Sie könnten statt Times New Roman auch TeX Gyre Termes ausprobieren, da es f
nicht so weit aus dem Begrenzungsrahmen herausragt: