# Sans and monospace font match for STIX Two

I am writing my PhD thesis using LuaLaTeX and unicode-math, and I would like to use some font different from Computer/Latin Modern, at least for the printed version. It is a thesis in theoretical physics, so a lots of math. As a consequence, I am first choosing the math font.

I would like to obtain a professional appearance, but I am not able to tell if a font is better than another for a PhD thesis in science. So I prefer to stick to some standard choices that are known to produces high quality results without fine tuning. The only feeling that I have is that the Computer Modern font, ubiquitous in the scientific community, looks like a bit to "light" for my taste.

I like the STIX Two Math font. The natural choice for the text serif font is then STIX Two Text. I need a sans serif and a monospace font to match with STIX Two. Actually, there are sans and monospace letters in STIX Two Math, so I could use the text font from which these letters were taken. So my question is: What is the source of sans and monospace letters in STIX Two Math?

I am using sans for headings. If the exact same font is not available, I could use a similar one that is a good match for STIX Two. Have you suggestions?

Other math fonts that I might consider:

• STIX version 1 from what I understand does not support unicode-math. A better choice would be XITS. What would be the pros and cons of XITS versus STIX Two?
• Minion Pro and Minion Math look very nice, but I prefer something freely available.
• Libertinus (https://github.com/khaledhosny/libertinus) comes with serif, sans, mono and math, but at least in the TeX Live 2016 version the math font is missing the \lAngle ⟪ and \rAngle ⟫ delimiters that I need. Also, there are only a few discussions on it, maybe just because it is quite new. I am not able to judge if it is a good choice for a thesis or it is still half-baked.
• Asana math? What would it be the text companions?
• Am I missing any good option?

Thank you for any suggestion.

• stix is (more or less) a times clone or at least in the style of times rather than a clone, so you could look what packages using times for a text or math font set up as the sans serif and monospace companions. Jan 27, 2017 at 16:13
• Most people use it togther with Helvetica and Courier. Jan 27, 2017 at 16:44
• Asana was designed to accompany Palatino, but it weight is just not right, the color too dark. Jan 27, 2017 at 22:30
• @YanZhou thanks for your suggestions. Could you please provide an example that shows that XITS is still better than STIX Two? (should I make a separate question just for this?). I will also give a try to Cambria Math+Constantina Jan 28, 2017 at 11:47
• @HerbSchulz I am using the \lAngle (mathematical left double angle bracket: ⟪) and \rAngle (mathematical right double angle bracket ⟫) characters, that Libertinus is missing. I checked the git version. Jan 28, 2017 at 12:13

i've checked with the font developers charged with "cleaning up" the stix 2 fonts.

the basic text font is modeled on times roman, as noted.

the sans and monospace characters in unicode plane 1 are the outlines from stix 1. they are both slated for cleanup and some redesign (but as far as i know that is not yet scheduled). the developer says this:

I don't know if you could say that there is a direct model for any of the sans, it is simply intended to work decently with the rest of the font stylistically. The math monospaced glyphs are also the outlines from 1.x, [...] but as with most other math monospaced are a modified Courier.

regarding selecting compatible fonts for sans serif and monospace text, again from the developer:

I think if one had to choose a matching Sans, there are a number of candidates, but yes, Helvetica and Courier are as good as any, if we consider availability issues.

there is plenty of advice in other questions on this site regarding adjustments in relative size (e.g., normalizing x-height) to these fonts for the sake of compatibility of appearance.

• Thank you. This answers my question, and I guess that the same suggestions apply to XITS math font. I will look for suggestions on the correct size normalization. Jan 30, 2017 at 13:30

To follow up on one of your other questions, Asana Math is a clone of Hermann Zapf’s Palatino and Young Ryu’s Pazo math font. It therefore matches Palatino (or its clone, TeX Gyre Pagella). This is an attractive, safe choice and the only knock on it is that it might be overused. Xapf’s Optima (and its clone URW Classico) is an excellent sans-serif companion font. I like Raph Levien’s Inconsolata as a humanist monospace font.

There are one or two other math alphabets I sometimes use. Asana math has a \mathscr alphabet that I don’t like very much, and is also used for \mathcal. It matches both Palatino and Optima very well (and indeed there are packages for classic TeX to set up this combination.) Hermann Zapf also designed a set of math fonts, called Euler, for Donald E. Knuth, and collaborated before his death with Khaled Hosny to convert them to OpenType. Keeping with the idea of using fonts by the same designer, I often use its \mathcal alphabet (or the Latin Modern Math version, which is based on Euler Calligraphic rather than the Computer Modern \mathcal). It’s one of the few math fonts whose upright alphabet is designed for math, and not just copied from the text font with bad kerning. It does not cover all symbols in Unicode, so for example you would need a different font for lowercase \mathcal. If I am using upright letters as constants, I also often use Euler instead of the plain text font for symbols such as i, e and π. You can also \usepackage[math-style=upright] and load Neo Euler with range=up to make its letters the default.

If, on the other hand, I do need a \mathscr alphabet distinct from \mathcal, I like the alternative stylistic set from STIX Two Math, which is based on boondoxo.

So, a possible preamble might look like this:

\usepackage[math-style=ISO]{unicode-math} % Or TeX, upright, etc.
\uaepackage{microtype} % In LuaLaTeX, enables font expansion and protrusion

\defaultfontfeatures{ Scale=MatchLowercase }
%% TeX Gyre Pagella is a clone of Palatino.  You can use the
%% real thing if you have it.  Windows and MacOS both do.
\setmainfont{TeX Gyre Pagella}[
Ligatures={Common,TeX},
Scale=1.0]
%% URW Classico is a clone of Optima, available at
%% https://www.ctan.org/pkg/classico
%% It is gratis, but has a restrictive license.
\setsansfont{URW Classico}[
Ligatures={Common,TeX}]
\setmonofont{Inconsolata}
\setmathfont{Asana Math}
%% Neo Euler is available at
%% https://github.com/khaledhosny/euler-otf
%% This lets you use, for example, \symup{e} and \symup{i}
%% for the constants.  It does not cover lowercase \mathcal.
\setmathfont{Neo Euler}[
range={up,bfup,cal,bfcal,frak,bffrak}]
%% If you need \mathscr distinct from \mathcal:
\setmathfont{STIX Two Math}[
range={scr,bfscr},
StylisticSet=1,
Scale=MatchUppercase]


In the special case that you’re writing a thesis in multiple languages that use different scripts, you might use \babelfont instead of \setmainfont, \setsansfont and \setmonofont.

To supplement STIX Two (Stix2), I use the Adobe Source Sans and Source Code families. Stix2 and Source Sans are the official typefaces of Gardner-Webb University of North Carolina, while (without Stix2) Source Sans and Source Serif are used by Stanford University [6].

STIX Two is related to Times New Roman, as others have noted. Times New Roman has narrow glyphs, as do fonts with the same widths, e.g., Tinos and Libertinus Serif. Libertinus Serif resembles STIX Two, and so Libertinus Sans and Libertinus Mono might be reasonable.

Less narrow typefaces include STIX Two (Stix 2) and Source Serif 3 (formerly Source Serif Pro), which is wider still.

In comparison to Libertinus Sans, Source Sans 3 has a more distinctive l and I pair (via the OpenType Stylistic Alternate, using fontspec):

StylisticSet = {1}


Consequently, I prefer Source Sans 3. (Earlier versions were called Source Sans Pro.) There are many sources on Source Sans [2,3,4,5,6], which has been praised by professional typographers [2,6].

You wrote "I prefer something freely available", so I classify the mentioned typefaces:

• Commercial and closed source: Times New Roman.
• Free but closed source: Tinos, STIX Two.
• Free and open source: Libertinus Serif, Libertinus Sans, Libertinus Mono; Source Serif 4, Source Sans 3, Source Code Pro.

FYI: The STIX project just released a new version of STIX Two (Stix2), which has a semibold weight [7,8].

1. Beeton, Barbara. The STIX Project---From Unicode to fonts.'' TUGboat 28, no. 3 (2007): 299--304. https://www.tug.org/TUGboat/tb28-3/tb90beet.pdf
2. Butterick, Matthew. Practical Typography. https://practicaltypography.com/free-fonts.html
3. Gilbertson, Scott. Source Sans Pro: Adobe's First Open Source Type Family. Wired 08.03.2021. https://www.wired.com/2012/08/adobe-dives-into-the-open-source-font-world-with-source-sans-pro/
4. Hunt, Paul D. Source Sans Pro: Adobe’s first open source type family. Fonts on Typekit. Tk: Adobe Typekit blog. 2 August 2012. https://blog.typekit.com/2012/08/02/source-sans-pro/
5. Hunt, Paul D. Source Sans 3. 7 September 2020. https://github.com/adobe-fonts/source-sans-pro
6. Rugen, Chris. Source Sans: Typeface Review. Typographica: Reviews, Books, Commentary. 13 March 2013. https://typographica.org/typeface-reviews/source-sans
7. Scientific and Technical Information eXchange (STIX). Welcome to STIXfonts. https://www.stixfonts.org
8. stipub. stixfonts: OpenType Unicode fonts for Scientific, Technical, and Mathematical texts. https://github.com/stipub/stixfonts