6

I'm using LuaTeX with Garamond Premier font. For some reason, enabling tracking from microtype package changes the tracking of small caps quite considerably. Maybe too much? See the pictures:

With tracking=false (or without the whole microtype package): enter image description here

With tracking=true:

enter image description here

When using tracking=true, I seem to get no change to output if I also specify %\SetTracking{encoding=*, shape=sc}{100}. So the default tracking value seems to be 100 for small caps when tracking is enabled.

Q: Which one or what is the correct tracking I should be using? I know how to change the tracking, but I don't know what would be the desired target.

Is there an objective truth here? I'd rather not set anything manually. Or is this 100% subjective thing and I need to decide it by myself by tweaking the tracking value? To my eye the 100 looks a bit too sparse so I'd bring it down a few notches.

MWE:

\documentclass[a4paper]{article}
\usepackage{fontspec}
\usepackage[tracking=true]{microtype}
\setmainfont[]{Garamond-Premier-Pro.ttf}

\begin{document}
Normal text. \textsc{small caps}.
\end{document}
2
  • 1
    as this is primarily an aesthetic question, there's no objective answer. If 100 seems too much to you (and I tend to agree), you can change the default with, say, letterspace=75 (or the SetTracking command).
    – Robert
    Commented Jul 12, 2022 at 23:51
  • Thanks, @Robert. I was not initially sure if I was seeing a problem in font rendering or just the result of some subjective choices of microtype package. It indeed seems that the package defaulted to a sparse letter spacing/tracking with SC fonts. And now I know how to change that.
    – Paapaa
    Commented Jul 13, 2022 at 8:22

1 Answer 1

8

According to Robert Bringhurst's “The Elements of Typographic Style”, version 3.0, page 30:

The normal value for letterspacing these sequences of small or full caps is 5% to 10% of the type size. If your software sees the em as 1000 PostScript units, that means 50 to 100 units of letterspacing.

Usually I prefer fontspec's integrated tracking support for that. The unit is percent of the type size.

\documentclass{article}
\usepackage{fontspec}
\setmainfont{LibertinusSerif-Regular.otf}[
  SmallCapsFeatures={LetterSpace=7.5,Ligatures={}}
]
\begin{document}

Normal text. \textsc{small caps}.

\end{document}

enter image description here


In fact with fontspec you can emulate almost all features of microtype. To also enable expansion and protrusion, use a preamble like this:

\documentclass{article}
\usepackage{fontspec}
\adjustspacing=2
\protrudechars=2
\newfontfeature{MicroType}{expansion=default,protrusion=default}
\setmainfont{LibertinusSerif-Regular.otf}[
  MicroType,
  SmallCapsFeatures={LetterSpace=100,Ligatures={}}
]
6
  • Thanks! I actually already tried that. And thanks for the tip: I'll definitely try without microtype if relevant stuff can be achieved without it. But my question was not how to change the tracking, but rather: how to achieve the "correct" tracking? Does your answer imply that the tracking without microtype package would be the correct one?
    – Paapaa
    Commented Jul 12, 2022 at 15:45
  • 1
    Additional question: fontspecdocumentation does not even mention "expansion" or "protrusion". So I guess these are LuaTeX features? Is there any documentation on how tp properly enable and config those features somewhere?
    – Paapaa
    Commented Jul 12, 2022 at 16:05
  • 1
    @Paapaa Protrusion and expansion are always handled by the underlying TeX engine. I don't know why fontspec doesn't provide high-level interfaces for that. In pdfTeX expansion and protrusion are a bit cumbersome to configure which is why microtype exists, but in LuaTeX these can be configured with Lua code. Here is an example for configuring the protrusion vectors: gist.github.com/hmenke/b8a1e7c47b92b8cf8778efa7d3eef315 Commented Jul 12, 2022 at 19:43
  • 1
    @Paapaa If you want even more in-depth information you can look at Fonts out of ConTeXt. This manual is specific to ConTeXt but since the LuaTeX font loader luaotfload is essentially a stripped-down version of the ConTeXt font loader a lot of stuff applies to it too. Commented Jul 12, 2022 at 19:44
  • 2
    @Paapaa I've also added a recommendation for letterspacing from one of my favorite typography books to my answer. Commented Jul 12, 2022 at 19:54

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .