So laden Sie ein mathematisches Glyph und richten es als \int ein

So laden Sie ein mathematisches Glyph und richten es als \int ein

Ich möchte das Glyph für das Integral ändern und es dann manchmal als \myint anstelle von \int verwenden. Aus diesem Grund muss ich herausfinden, wie ich das Integral-Glyph aus einer Schriftart laden und ihm das typische \int-Aussehen geben kann (mitLualatex). Nehmen wir Latin Modern als Beispielschriftart und laden den mathematischen Teil davon herunter vonLM Math herunterladen. Momentan bekomme ich Folgendes:

Bildbeschreibung hier eingeben

Bitte beachten Sie den überflüssigen Platz nach dem Integral und die fehl am Platz befindlichen Grenzwerte. Meine Frage ist: Wie behebe ich diese beiden Dinge?

Der Code, der das Obige erzeugt hat, ist:

% !TEX program = lualatex
\documentclass[ngerman,10pt]{scrartcl}
\usepackage{fontspec}
%\usepackage{unicode-math}
\setlength{\fboxsep}{0pt}
%\usepackage{newcomputermodern}

% from https://tex.stackexchange.com/a/439983/294323
\newfontface{\mysymbolsfontface}{latinmodern-math.otf}[
    %Path = ./,          % Adjust the path to where the font is located
    Extension = .otf,
    NFSSFamily=mysymbolsfontfamily %use some name for the font family
]
\DeclareSymbolFont{mysymbolsfont}{TU}{mysymbolsfontfamily}{m}{n}
\Umathchardef\displaymyint="1 \symmysymbolsfont "222B %"\sym" then symbolsfontname then glyph code. The "1 stands for mathoperator
\Umathchardef\inlinemyint="1 \symmysymbolsfont "222B

\DeclareRobustCommand\myint{\mathchoice
{\displaymyint\nolimits}
{\inlinemyint\nolimits}
{\inlinemyint\nolimits}
{\inlinemyint\nolimits}}



\begin{document}

Inline: \qquad\qquad\qquad \fbox{$\myint$} \quad \fbox{$\myint_\infty^\infty g(x)$}\\
Displaymode: \qquad\qquad\qquad \fbox{$\displaystyle\myint$} \quad \fbox{$\displaystyle\myint_\infty^\infty g(x)$}\\

Supposed Inline: \quad \fbox{$\int$} \quad \fbox{$\int_\infty^\infty g(x)$}\\
Supposed Displaymode: \quad \fbox{$\displaystyle\int$} \quad \fbox{$\displaystyle\int_\infty^\infty g(x)$}\\
\end{document}

Antwort1

Wenn man Unicode-Mathe-Fonts verwendet (zum Beispiel latinmodern-math.otfals Basis-Font und texgyrepagella-math.otffür Alternativzeichen), dann funktioniert alles problemlos. Ich habe das hier mit OpTeX probiert:

\fontfam[lm]  % latinmodern-math is loaded here
\addUmathfont \pagella {[texgyrepagella-math]]}{} {}{} {} % load font and register it at math-font family \pagella
\Umathchardef\myintop 1 \pagella `∫  \protected\def\myint{\myintop\nolimits} % \myint declaration

Test: $\int_a^b f(x), \myint_a^b f(x), \displaystyle \myint_a^b f(x) $

\bye

Ich habe Pagella gewählt, damit Sie sehen können, dass das Integralsymbol tatsächlich im \myintMakro verwendet wurde. Sie können stattdessen natürlich auch Ihre eigene Schriftart verwenden.

OpTeX läuft mit LuaTeX. Sie haben erwähnt, dass Sie LuaLaTeX verwenden, das auch mit LuaTeX läuft. Das bedeutet, dass es auch mit LuaLaTeX keine Probleme geben sollte, aber ich kenne mich mit LaTeX nicht aus, also erwarten Sie von mir keine Ratschläge zu LaTeX.

verwandte Informationen