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.

  • @PhelypeOleinik I believe he already posted a M(non-)WE. – Manuel Mar 7 '18 at 15:49
  • 1
    Use a font that provides bold small caps. Please do not fake-bold the small caps, that looks just horrible. – Henri Menke Mar 7 '18 at 20:00
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:

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.