Redefinindo a fonte matemática

Redefinindo a fonte matemática

Estou procurando uma maneira de redefinir a fonte \mathcalusada no modo matemático. Gostaria que todos os caracteres que usam a \mathcal{}função fossem escritos, por exemplo, na fonte Asana Math, e todos os outros textos matemáticos fossem escritos no texto padrão. Até agora, eu tenho:

\documentclass[11pt]{report}

%%%Packages%%%

\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{amsfonts}
\usepackage{amsmath}
\usepackage{fontspec}
\usepackage{unicode-math}
%\DeclareMathAlphabet{\mathcal}{OMS}{cmsy}{m}{n}

%\setmathfont{Asana Math}
\let\mathcal=\mathscr

\begin{document}

\begin{equation}
\mathcal{p} = U(x,t)
\end{equation}

\end{document}

como meu MWE.

Responder1

Ao definir uma fonte matemática com \setmathfont, você pode usar a rangeopção para especificar qual alfabeto matemático deseja alterar, desde que tenha definido uma fonte matemática principal. Isso funciona bem com unicode-mathfontes, mas como outros disseram nos comentários, na maioria dos casos o pacote mathalphaé realmente bom para alterar , mathcale fontes .mathscrmathbbmathfrak

O exemplo a seguir usa o alfabeto padrão usado por unicode-math(Latin Modern Math) e depois define a \mathscrfonte como Asana Math.

\documentclass[11pt]{report}

\usepackage{amssymb, amsmath, amsthm}
\usepackage{unicode-math}
\setmathfont{LatinModern-Math.otf}
\setmathfont{Asana-Math.otf}[range=scr]

\begin{document}

\begin{gather*}
ABCDEFGHIJKLMNOPQRSTUVWXYZ \\
abcdefghijklmnopqrstuvwxyz \\
\mathcal{ABCDEFGHIJKLMNOPQRSTUVWXYZ} \\
\mathcal{abcdefghijklmnopqrstuvwxyz} \\
\mathscr{ABCDEFGHIJKLMNOPQRSTUVWXYZ} \\
\mathscr{abcdefghijklmnopqrstuvwxyz} \\
\mathfrak{ABCDEFGHIJKLMNOPQRSTUVWXYZ} \\
\mathfrak{abcdefghijklmnopqrstuvwxyz}
\end{gather*}

\end{document}

Responder2

Tente com \usepackage{eucal}, isso faz com que os \mathcalcaracteres fiquem em fontes diferentes...

informação relacionada