0

I am using a font which provides small caps as an additional font file. The fonts are available for ConTeXt, I checked this with

$ mtxrun --script fonts --list --all | grep Concourse
concoursec3     concoursec3     /Users/flyx/Library/Fonts/Concourse C3 Regular.ttf
[...]
concourset3     concourset3     /Users/flyx/Library/Fonts/Concourse T3 Regular.ttf
[...]

The c3 font is the small caps font, while the t3 font is the regular one. I am loading the font like this:

\definefontfamily [mainface] [ss] [Concourse T3] [sc=file:concoursec3]
\setupbodyfont[mainface]

Now I am trying to use the small caps in text:

\starttext
  \ss This should be sans serif.

  \setff{smallcaps} This should use small caps.
\stoptext

While both lines are in sans serif, the second one is not in small caps. What am I doing wrong?

4
  • You need the \sc font switch to get small caps, the \setff command is used to enable a feature in the current font. Sep 6, 2017 at 12:01
  • @Metafox If I replace \setff with \sc, it still does not render small caps.
    – flyx
    Sep 6, 2017 at 12:18
  • 1
    You have to set the full name for the small caps font, i.e. \definefontfamily[mainface][ss][Concourse T3][sc=file:concoursec3regular]. Sep 6, 2017 at 12:39
  • That did it, would you post it as answer?
    – flyx
    Sep 6, 2017 at 12:50

1 Answer 1

4

When you set a different font by filename you have to use the complete name.

\definefontfamily [mainface] [ss] [Concourse T3] [sc=file:concoursec3regular]

Small caps are normally enabled with the \sc font switch, the \setff command can only be used when small capitals are a font feature where you can enable them for the current font.

\definefontfamily [mainface] [ss] [Concourse T3] [sc=file:concoursec3regular]

\setupbodyfont[mainface]

\starttext

This should be sans serif.

{\sc This should use small caps.}

\stoptext

You must log in to answer this question.

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