6

The title pretty much tells it: How to do bold small caps in conTeXt?

According to the wiki this should work:

\starttext
\setff{smallcaps} Normal and \bf bold Small Caps.
\stoptext

But for me it doesn't. \setff seems to have no effect.

I found a note in the reference manual on page 127:

At the moment, smallcaps and oldstyle only work in XƎTEX (in MkIV, it would need an extra mode=node pair).

But then, redefining the smallcaps feature with

\definefontfeature
   [smallcaps]
   [script=latn,language=dflt,liga=yes,kern=yes,tlig=yes,trep=yes,mode=node]

doesn't work either.

2
  • @PhelypeOleinik I believe he already posted a M(non-)WE.
    – Manuel
    Mar 7, 2018 at 15:49
  • 1
    Use a font that provides bold small caps. Please do not fake-bold the small caps, that looks just horrible. Mar 7, 2018 at 20:00

2 Answers 2

1

You can print an outline on top of the characters to simulate boldface. It looks a bit better with a small amount of stretch, although in both cases the end result is not very satisfactory. With the stretch you have to adjust spacing manually. See http://www.pragma-ade.nl/general/magazines/mag-0006-mkiv.pdf (section Font effects) for more options and examples.

MWE:

\starttext
\sc Normal and \starteffect[both]bold Small Caps\stopeffect.

\setupeffect[both][stretch=1]
\setupalign[right]
\definehspace[large][1.3 em]
\sc Normal and \starteffect[both]bold Small Caps\stopeffect \hspace[large] and other text.
\stoptext

Result:

enter image description here

0

Using the Gauge font, here's one possible way:

\starttypescript [serif] [body]
  \definefontsynonym [Serif]       [name:times] [features=default]
\stoptypescript

\starttypescript [sans] [header]
  \definefontsynonym [SansCaps]      [name:gaugenormal] [features=default]
  \definefontsynonym [SansCapsBold]  [name:gaugebold]   [features=default]
\stoptypescript

\definetypeface[impact] [rm] [serif] [body]   [default]
\definetypeface[impact] [ss] [sans]  [header] [default]

%\usetypescript[impact]
\setupbodyfont[impact]

\definefont[FontChapter][SansCapsBold sa \FontSizeChapter]
\definefont[FontSection][SansCaps sa \FontSizeSection]

\def\FontSizeChapter{4.75}
\def\FontSizeSection{1.25}

\def\BookChapterTitle#1{\FontChapter{#1}}

\setuphead[chapter][
  deeptextcommand=\BookChapterTitle,
  number=no,
]

\setuphead[section][
  style=\FontSection,
  number=no,
]

\starttext
  \startchapter[title=Chapter Title]
    \input ward
  \stopchapter

  \startsection[title=Section Title]
    \input knuth
  \stopsection
\stoptext

Produces:

Small Caps Output

Note that setff is deprecated. See also:

You must log in to answer this question.

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