Falsche Höhe für Quadratwurzel bei Verwendung von Unicode-Mathematik und Lualatex

Falsche Höhe für Quadratwurzel bei Verwendung von Unicode-Mathematik und Lualatex

Das ist, was ich sehe:Bildbeschreibung hier eingeben Beachten Sie die Diskrepanz in der Höhe des Quadratwurzelsymbols in \sqrt{11}. Dies scheint nur aufzutreten, wenn ich mit kompiliere lualatex.

Hier ist mein MWE:

\documentclass{article}
\usepackage{amsmath}
\usepackage{unicode-math}
\setmathfont[]{TeX Gyre Pagella Math}
\setmathfont[range={cal}]{Latin Modern Math}

\begin{document}
  Note well:
  \begin{equation*}
    x = \sqrt{11}\sqrt{19}
    \qquad
    y = \frac{\sqrt{11}\sqrt{19}}{26}
  \end{equation*}
\end{document}

Ich gehe davon aus, dass es sich um einen Fehler handelt, bin mir aber nicht sicher, ob das der Fall ist und wie ich ihn in diesem Fall melden kann.

Antwort1

Es handelt sich um eine bekannte „Funktion“ der rangeOption. Sie können es beheben, indem Sie als letzte mathematische Schriftart die Hauptschriftart wiederherstellen und sie für den Bereich einiger Symbole auswählen.

Der Autor unicode-mathist sich dessen bewusst.

\documentclass{article}
\usepackage{amsmath}
\usepackage{unicode-math}
\setmathfont[]{TeX Gyre Pagella Math}
\setmathfont[range={cal}]{Latin Modern Math}
\setmathfont[range=\int]{TeX Gyre Pagella Math}

\begin{document}
  Note well:
  \begin{equation*}
    x = \sqrt{11}\sqrt{19}
    \qquad
    y = \frac{\sqrt{11}\sqrt{19}}{26}
  \end{equation*}
\end{document}

Bildbeschreibung hier eingeben

Antwort2

Es gibt nicht nur ein Problem mit der Höhe der Wurzeln, wenn man genau hinsieht, sieht man, dass die horizontalen Regeln der Wurzeln falsch sind und auch die Bruchregel zu dünn ist. Wie egreg schrieb, ist es ein Problem mit der Bereichsoption. Die letzte mathematische Schriftart legt wichtige mathematische Konstanten fest. In diesem Fall liegt das Problem bei \Umathradicalruleund \Umathfractionrulewie Sie in diesem Beispiel sehen können:

\documentclass{article}
\usepackage{amsmath}
\usepackage{unicode-math}
\setmathfont[]{TeX Gyre Pagella Math}
\makeatletter\check@mathfonts \makeatother
\edef\textstylerulewidth{\the\Umathradicalrule\textstyle}
\edef\displaystylerulewidth{\the\Umathradicalrule\displaystyle}
\edef\displaystylefraction{\the\Umathfractionrule\displaystyle}

\setmathfont[range={cal}]{Latin Modern Math}


\begin{document}
\makeatletter\check@mathfonts \makeatother
\Umathradicalrule\textstyle=\textstylerulewidth 
\Umathradicalrule\displaystyle=\textstylerulewidth 
\Umathfractionrule\displaystyle=\displaystylefraction
  Note well:
  \begin{equation*}
    x = \sqrt{11}\sqrt{19}
    \qquad
    y = \frac{\sqrt{11}\sqrt{19}}{26}
  \end{equation*}
\end{document}

(Die Werte auf diese Weise einzeln festzulegen, ist natürlich nicht der richtige Weg, die Lösung von egreg ist besser, aber es ist meiner Meinung nach interessant zu sehen, wie sich dieser Wert auf die Ausgabe auswirkt.)

verwandte Informationen