I'm using pdflatex, and I would like to load a specific font from a package. For example, I only want to use the mathfrak, mathcal, and mathscr fonts of stickstoo from newtxmath (but nothing else). The whole package could be loaded via


but that would load many other things and not just those fonts.

Previously, I've done something similar: load Euler caligraphic font via the command


I found it somewhere on the internet and just copied and pasted. Now, the sequence


looks completely mysterious to me. So I would like to ask:

  • In particular, how to achieve the goal above (selectively use those fonts from newtxmath)?
  • More generally, how do I figure out what to put in \DeclareMathAlphabet myself?


  • 2
    {U}{zeus}{m}{n} is a New Font Selection Scheme code for: Unspecified encoding, virtual-Euler-Script family, medium weight, normal shape. If you want to load Euler Script, though, load it through either mathalfaor the traditional eucal/euscript packages instead. Much simpler. Better yet, Neo Euler is available for unicode-math. – Davislor Mar 19 '19 at 22:41

In PDFLaTeX, Use the mathalfa package to select individual script alphabets. For example

\usepackage[cal=txupr ,
            frak=pxtx ,

This assumes you want the TX upright alphabet as \mathcal. If these fonts aren’t the right height to match your math font, also provide calscaled=, frakscaled= and scrscaled=. package options.

Euler Script is available through the mathalfa package as well. If you don’t want to use mathalfa, I would recommend loading those alphabets through the traditional packageseucal, euscript and eufrak, which are part of amsfonts. (Note that euscript and eucal make the same Euler Script alphabet available as \mathscr or \mathcal, respectively.) The OpenType version compatible with unicode-math is Neo Euler.

A PDFTeX-compatible way to select the more conventional math alphabets (such as upright, italic and bold) is isomath.

With the modern toolchain, Asana Math provides math alphabets based on Young Ryu’s px fonts. (It also contains an different script alphabet as a stylistic alternate, so you can have both \mathcal and \mathscr.) TeX Gyre Termes Math is also reasonably similar to newtx. With unicode-math, you can give either an option such as

\setmathfont[Scale = MatchUppercase, range={cal, bfcal, frak, bffrak}]{Asana Math}
  • Thanks a lot for the quick answer. One question I still have is that how do I figure out those names txupr, pxtx? For example, if I want to load shapes from stickstoo in newtxmath, how do I know what the name is? – QcH Mar 20 '19 at 5:34
  • And unfortunately, I cannot use unicode-math since I can only use pdflatex. – QcH Mar 20 '19 at 5:34
  • 1
    @QcH The page you link discusses Unicode ranges and is relevant to the Unicode version of the font, STIX2Math.otf. In unicode-math, you would use the [range=...] option of setmathfont, probably with an alias such as cal or frak. – Davislor Mar 20 '19 at 20:45
  • 1
    @QcH The specific commands in the case of stix2.sty are actually a little hard to guess, because the package packs a lot of different gylphs into the limited number of legacy NFSS math alphabets, declares a local symbol encoding, and repurposes the weights and shapes as additional symbol alphabets. You can open the stix2.sty file from your TeX directory to see the exact commands it uses for that. – Davislor Mar 20 '19 at 21:07
  • 1
    @QcH If you want to post a separate question about STIX Two, I’ll answer it when I get the chance. – Davislor Mar 20 '19 at 21:10

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.