\startonderdeel co-nl-06

\projekt manual
\produkt cont-nl

\hoofdstuk[typografie]{Typografie}

\paragraaf{Inleiding}
\index{typografie}


Door de eeuwen heen zijn methoden ontwikkeld en aangepast om
feiten en gedachten aan een medium toe te vertrouwen. Een
erg effici\"ente methode is het gebruik van logogrammen,
zoals bijvoorbeeld Chinezen al sinds mensenheugenis
gebruiken. Een andere methode vertaalt elke klank in een
symbool. Dit gebeurt bijvoorbeeld in Japan bij het schrijven
van telegrammen. De meest bekende manier van opslaan maakt
echter gebruik van een beperkte set symbolen die elk een of
meer fonemen (klankelementen) verbeelden. We noemen zo'n
collectie een alfabet.

Hoewel \TEX\ in eerste instantie bedoeld is voor het zetten
van alfabetisch ge\"orienteerde talen, kan het met wat
kunstgrepen ook uit de voeten met de andere twee methoden. In
deze handleiding zullen we ons echter concentreren op de
talen die een alfabet gebruiken.

De symbolen die de karakters in een alfabet representeren
zijn min of meer gestandaardiseerd. Hierdoor zijn ze
herkenbaar voor lezers, zelfs als ze op details verschillen.
Een collectie symbolen, die we in dat verband vaak aanduiden
als glyphs, duiden we aan met de naam font.

\usetypescriptfile[type-buy]
\usetypescript[map,sans,mono,handwriting,calligraphy,serif][lucida,times,antykwa-torunska][texnansi]

\startregelcorrectie
\ruledhbox to \hsize
  {\hss
   \definieerfont[test][ComputerModern          at 60pt]\test gok\setstrut\strut\hss
   \definieerfont[test][LucidaBright            at 60pt]\test gok\hss
   \definieerfont[test][Times-Roman             at 60pt]\test gok\hss
   \definieerfont[test][AntykwaTorunska-Regular at 60pt]\test gok\hss}
\stopregelcorrectie

Van links naar rechts zien we hier een Computer Modern, een
Lucida Bright, een Times Roman en een Antiqua Torunka font,
allen geschaald naar 60pt. Fonts zijn zo ontworpen dat een
bladzijde tekst prettig overkomt en lezen wordt aangemoedigd.

\startregelcorrectie
\ruledhbox to \hsize
  {\hss
   \definieerfont[test][LucidaBright            at 48pt]\test lap\setstrut\strut\hss
   \definieerfont[test][LucidaBright-Demi       at 48pt]\test lap\hss
   \definieerfont[test][LucidaBright-Italic     at 48pt]\test lap\hss
   \definieerfont[test][LucidaBright-DemiItalic at 48pt]\test lap\hss}
\stopregelcorrectie

Binnen een bepaald letterontwerp komen in de regel
varianten voor die weliswaar dezelfde vorm hebben, maar
toch wezenlijk verschillen. Hierboven zien we bijvoorbeeld
een standaardvorm, een vette variant, een bijpassende
italic en een vette italic, allen Lucida Bright.

We zullen in deze handleiding niet diepgaand ingaan op de
wijze waarop letters worden gecombineerd tot woorden, die op
hun beurt regels vormen, al dan niet met afbrekingen, samen
goed voor een paragraaf. In dit hoofdstuk staat het wisselen
van font centraal.

De afstand tussen de verschillende glyphs kan afhangen van
de combinatie. Het volgende voorbeeld illustreert dit. Zowel
de afstand tussen de~b en de~o als die tussen de~o en de~x
is aangepast. We noemen dit kerning.

\haalbuffer[kerning]

In dit voorbeeld tonen we een Computer Modern, het standaard
\TEX\ lettertype. Dit door Knuth ontworpen lettertype is een
variant op een Monotype Modern, en kent, in tegenstelling tot
de Lucida die in deze handleiding wordt gebruikt, relatief
veel kerning paren.

Dit soort micro||typografie valt buiten de invloedssfeer van
de gebruiker, het maakt deel uit van het letter ontwerp. De
gebruiker kan echter wel invloed uitoefenen op de keuze van
een lettertype, de afstand tussen regels, het oogje dat
\TEX\ dichtknijpt bij het zetten van een paragraaf, en nog
enkele aspecten. In dit hoofdstuk beperken we ons tot de
keuze van het lettertype.

Er zijn verschillende manieren om het karakter van een
lettertype te benoemen. Men kan bijvoorbeeld klassificeren
naar historisch gezien de tijd waarin een letter is
ontworpen, de kenmerken van het lettertype, of de
gebruikswaarde, bijvoorbeeld een boek of krant.

\haalbuffer[ok-1]

Hier zien we naast elkaar vijf gedaanten van de Lucida: de
Bright, Sans, Typewriter, Handwriting en Calligraphy. Er
zijn slechts weinig ontwerpen die zo veel stijlen herbergen.
De Computer Modern is ook zo'n ontwerp. Bovendien kent dit
ontwerp als een van de weinige nog ontwerpgrootten, iets dat
vroeger heel normaal was, maar tegenwoordig een
zeldzaamheid. Hieronder zien we, uitvergroot tot 48 punten,
het verschil tussen een 5, 7, 9, 12 en 17~punts ontwerp.

\haalbuffer[ok-2]

We beperken ons hier tot de eerste drie verschijningsvormen
{\rm Roman}, {\ss Sans} en {\tt Typewriter}. Als we voor een
meer algemene aanduiding kiezen, komen we terecht bij de
typeringen in \in{tabel}[tab:font tripletten].

\plaatstabel
  [hier][tab:font tripletten]
  {Enkele manieren om een style te classificeren.}
  {\haalbuffer[styles]}

Hoewel de eerste twee reeksen beter aansluiten bij de
typografische wereld, gebruiken we binnen \CONTEXT\ vaak de
laatste, dit omdat hij beter aansluit bij de traditionele
benamingen binnen plain \TEX. Zo wordt \type {\rm} gebruikt
om over te gaan op een roman|/|serif|/|regular stijl, en
\type {\tt} voor mono gespatieerde of typewriter stijl.

In de volgende paragrafen gaan we in op de wijze waarop men
stijl en|/|of varianten instelt. Een waarschuwing is daarbij
op zijn plaats. Gezien de relatie tussen fonts, iets dat met
name tot uitdrukking komt in de wiskundige modus (math
mode), is het achterliggende mechanisme redelijk complex.
Deze situatie wordt nog gecompliceerd door het feit dat
zowel de rangschikking van de karakters die men intypt, als
de ordening van de karakters in een font file (beiden
aangeduid met encoding vector) roet in het eten kunnen gooien.
Enige kennis van fonts en hun eigenaardigheden is in dat
geval nodig.

\paragraaf[korps]{Het mechanisme}
\index{korps}
\index{letterformaten}
\index{roman}
\index{sans serif}
\index{typeletter}
\macro{\tex{stelkorpsin}}
\macro{\tex{switchnaarkorps}}
\macro{\tex{x}}
\macro{\tex{xi}}
\macro{\tex{xii}}
\macro{\tex{ix}}
\macro{\tex{viii}}

Het wisselen van font wordt aangeduid als een font||switch.
Omdat zo'n mechanisme onmisbaar is, is het tegelijk een van
de oudste onderdelen van \CONTEXT. Wel zijn in de loop der
tijd met name in de wijze van defini\"eren uitbreidingen
gerealiseerd. Bij het opzetten van het mechanisme zijn de
volgende uitgangspunten gehanteerd.

\startopsomming[opelkaar]
\som  Er kan eenvoudig worden gewisseld van {\em stijl}, dat
      wil zeggen: roman (serif, regular), sans serif
      (support), teletype (ook wel monospaced) enz. (\type
      {\rm}, \type {\ss}, \type {\tt} enz.)
\som  Er zijn meerdere {\em varianten} van letters
      beschikbaar, zoals schuin en vet (\type {\sl} en \type
      {\bf}).
\som  Er worden verschillende {\em families} ondersteund,
      waaronder Computer Modern Roman en Lucida Bright.
\som  Er kan eenvoudig worden gewisseld van {\em korps},
      waarbij standaard de korpsen tussen 8pt en 12pt
      beschikbaar zijn.
\som  Binnen een korps zijn verschillende {\em formaten}
      mogelijk, bijvoorbeeld voor sub- en superscripts. De
      {\em formaten} kunnen door elkaar worden gebruikt, met
      behoud van stijl, variant en familie.
\som  Er wordt rekening gehouden met de specifieke kenmerken
      van een {\em font}, waaronder de wijze waarop het font
      is gedefinieerd, zoals de encoding vector.
\stopopsomming

Letters, of beter gezegd: de grafische interpretatie van
letters, zijn in verschillende korpsen (afmetingen)
beschikbaar. Als eenheid wordt de punt gebruikt, de
\type {pt}. De beschikbaarheid wordt geregeld in
definitie||files. In betere tijden werden voor elke afmeting
aparte letters ontworpen, een traditie die eigenlijk alleen
is voortgezet in de standaard \TEX\ fonts. Bij de meeste
fonts zal men het moeten doen met een geschaald 10~punts
ontwerp.

Om herhaald defini\"eren te voorkomen, zijn standaard de meest
gebruikelijke afmetingen gedefinieerd: 8--14.4 punten.
Wanneer men onverhoopt een nog niet gedefinieerde afmeting
instelt, bijvoorbeeld 32 punt op een titelpagina, dan zal
\CONTEXT\ dit formaat zelf defini\"eren, binnen de
randvoorwaarden van de standaard korpsomgeving. Standaard
wordt met een precisie van 1~digit gewerkt (instelbaar op 0,
1 en~2). Dit voorkomt onnodig laden van formaten met slechts
kleine verschillen. Uitgangspunt bij de afronding is dat iets
kleiner vaak minder erg is dan wat groter.

Het in een tekst te gebruiken korps, de stijl en de familie
worden ingesteld met het commando:

\toonsetup{stelkorpsin}

terwijl lopende de tekst kan worden omgeschakeld met het
commando:

\toonsetup{switchnaarkorps}

Dit laatste commando laat de instellingen van het in hoofd
en voet gebruikte korps intact. Met \type{klein} en
\type{groot} gaat men over op een kleiner korps,
{\switchnaarkorps[klein]zo klein dus}, of een groter korps.

Het commando \type {\stelkorpsin} wordt als het goed is maar
eenmaal gebruikt, in de stijldefinitie! Tussentijds wisselen
vindt plaats met \type {\switchnaarkorps}. Haal dit niet door
elkaar, anders kunnen vreemde, maar volledig legitieme,
nevenverschijnselen optreden. Het eerstgenoemde commando
heeft namelijk ook betrekking op de hoofd- en voetregels.

\TEX\ zoekt de informatie over een bepaald lettertype in een
file met de extensie \type{tfm}. Hoewel het mogelijk is
dergelijke files van te voren te laden, stelt \CONTEXT\ dit
laden zo lang mogelijk uit. De reden hiervoor is dat
dergelijke files per systeem kunnen verschillen.

De voor hoofd- en voetregels en voetnoten gebruikte
letterformaten worden na het geven van dit commando
automatisch aangepast, evenals de interlinie en de sprongen.
De volgende, korte commando's, beperken zich echter tot de
tekst: \type {\vi}, \type {\vii}, \type {\viii}, \type
{\ix}, \type {\x}, \type {\xi} en \type {\xii}.

De commando's:

\startbuffer
{\xii  met deze zetomgeving \par}
{\xi   is het mogelijk om   \par}
{\x    een hele redelijke   \par}
{\ix   ogentest te maken:   \par}
{\viii a x c e u i w m q p  \par}
\stopbuffer

\startvoorbeeld
\typebuffer
\stopvoorbeeld

De interlinie wordt automatisch aangepast, dit wordt links
getoond. Rechts zien we wat er gebeurt als de interlinie niet
zou zijn aangepast.

\startregelcorrectie
\startcombinatie
  {\vtop{\forgetall\hsize.4\tekstbreedte\haalbuffer}}                 {}
  {\vtop{\forgetall\hsize.4\tekstbreedte\everybodyfont{}\haalbuffer}} {}
\stopcombinatie
\stopregelcorrectie

\paragraaf[omschakelen]{Omschakelen}
\index{letterypen}
\index{roman}
\index{slanted}
\index{boldface}
\index{italic}
\index{typeletter}
\index{sans serif}
\index{old style}
\index{medaeval cijfers}
\index{vet drukken}
\index{dik drukken}
\index{schuin drukken}
\index{scheef drukken}
\index{schreefloze letter}

Het mechanisme voor het wisselen van korps en lettertype is
vrij geavanceerd en daarom niet eenvoudig uit te leggen. Er
wordt onderscheid gemaakt in verschillende families. Binnen
deze families onderscheiden we een of meer stijlen.

Voorbeelden van stijlen zijn: {\rmtf roman}, {\sstf sans
serif} en {\tttf teletype}. In enkele gevallen is een
handschrift en|/|of calligrafische letter beschikbaar.
Voorbeelden van varianten binnen een stijl zijn: {\bf
boldface} en {\sl slanted}.

Er zijn verschillende manieren om van lettertype te
wisselen. Zo gaat men met \type {\ss} over op een sans serif
letter. Vanaf dat moment zijn commando's als \type {\bf}
aangepast op deze nieuwe stijl. Als men consequent gebruik
maakt van commando's als \type {\bf} en \type {\sl}, krijgt
men als men bovenaan de tekst van stijl wisselt, automatisch
de juiste overgangen op vet en schuin. Een (aanzienlijk)
snellere manier van wisselen is ook beschikbaar in de vorm
van: \type {\ssbf}, \type {\sssl} enz. Deze snelle manier
maakt echter het als geheel in een andere stijl zetten van
een tekst onmogelijk.

Hieronder zijn de varianten weergegeven. De afkorting \type
{\sl} staat voor {\sl slanted}, \type {\it} staat voor {\it
italic} en \type {\bf} voor {\bf boldface}. Aanvullend zijn
eventueel ook \type {\bs} en \type {\bi} beschikbaar, ofwel:
{\bs bold slanted} en {\bi bold italic}. Als een variant
niet beschikbaar is, dan wordt hij op een redelijk
alternatief geprojecteerd.

Met \type {\os} duiden we aan dat we de mediaeval of
old||style cijfers {\os 139} willen in plaats van {\rm 139}.
De aanduiding \type{\sc} staat voor {\sc Small Caps}. Met
een \type {x} duiden we een kleiner lettertype aan, met
\type {a}, \type {b}, \type {c} en \type {d} een groter. De
actuele stijl wordt aangegeven met \type {\tf} ofwel
typeface.

\startvoorbeeld
\starttypen
\tfa \tfb \tfc \tfd
\tfx \bfx \slx \itx
\bf \sl \it \bs \bi \sc \os
\stoptypen
\stopvoorbeeld

Afhankelijk van de volledigheid van de definitie||files zijn
ook varianten als \type{\bfa}, \type{\bfb} enz. beschikbaar.
Als een alternatief niet voorhanden in, wat nog wel eens het
geval is voor italic of slanted, of hun vette companen, dan
wordt een redelijk alternatief gekozen. In dat geval zijn
bijvoorbeeld italic en schuin hetzelfde.

Voor de liefhebber is er \type{\tx} beschikbaar. Dit is
equivalent met \type{\tfx}, \type{\bfx}, \type{\slx} enz.,
afhankelijk van de actuele variant. Nog kleiner kan ook:
\type{\txx}. Binnen \type {\tx} gaat nogmaals \type {\tx}
over op deze nog kleinere variant.

Het frequent wisselen van letter leidt tot lange
verwerkingstijden. Als geen gebruik wordt gemaakt van super-
en subscripts en als men echt zeker weet welke letter men
wil gebruiken, dan kan men meestal ook een variant op naam
oproepen: \type{\rmsl}, \type{\ssbf}, \type{\tttf} enz.

Het wisselen van stijl vindt plaats met een van de
commando's:

\startvoorbeeld
\starttypen
\rm \ss \tt \hw \cg
\stoptypen
\stopvoorbeeld

Als \type{\rm} gekozen is, leest \CONTEXT\ het commando
\type{\tfd} als \type{\rmd}. Alle standaardinstellingen
maken gebruik van \type{tf}||instellingen en passen zich dus
automatisch aan.

De verschillende commando's passen zich steeds zo goed
mogelijk aan bij de op dat moment actuele instellingen van
het lettertype en formaat. Bijvoorbeeld:

\startbuffer
{\rm test {\sl test} {\bf test} \tfc test {\tx test} {\bf test}}
{\ss test {\sl test \tx test} {\bf test \tx test}}
\stopbuffer

\startvoorbeeld
\typebuffer
\stopvoorbeeld

levert:

\startrealiteit
\startregels
\haalbuffer
\stopregels
\stoprealiteit

Als een letter niet voorhanden is, dan wordt een automatisch
een acceptabel alternatief gekozen.

Op het typografische enigzins verwerpelijke onderstrepen en
doorhalen gaan we hier niet in. Deze worden besproken in \in
[onderstrepen] (\over [onderstrepen]).

\paragraaf[letters]{Letters}
\index{\type{letter}}

Een aantal commando's heeft een parameter \type{letter}
waarmee een lettertype kan worden ingesteld. In dat geval
kunnen commando's als \type{\sl} of \type{\rma} worden
meegegeven, maar ook een van de volgende aanduidingen:

\startvoorbeeld
\starttypen
normaal  vet  schuin  vetschuin  italic  vetitalic  type
klein  kleinvet  kleinschuin  ...  kleinitalic  ...  kleintype
kapitaal
\stoptypen
\stopvoorbeeld

Hoewel flexibiliteit zijn grenzen kent, worden bij de
parameter \type{letter} zowel \type{vet} als \type{\bf} of
\type{bf} geaccepteerd. Zelfs de achter de schermen
opererende naam \type{12ptrmbf} is toegestaan. Deze laatste
variant wordt afgeraden.

\paragraaf[korpsen]{Beschikbare alternatieven}
\index{\type{cmr}}
\index{\type{eul}}
\index{\type{con}}
\index{\type{lbr}}

Er zijn slechts weinig font sets (korpsen) beschikbaar die
ook wiskunde aan kunnen. Natuurlijk is er de Computer Modern
Roman, maar de zeer fraaie Lucida Bright en de door
uitgevers zeer gewaardeerde Times zijn ook bruikbaar. Al
deze fonts beschikken over een volledige set karakters voor
wiskundig zetwerk. De Computer Modern Roman onderscheidt
zich zowel door volledigheid als door de hoogwaardige
kwaliteit van andere fonts. Er zijn op dit ontwerp enkele
aanvullingen beschikbaar: Euler en Concrete.\voetnoot{Zie
Concrete Mathematics van Knuth cs., in veel opzichten zowel
typografisch als didactisch een perfect boek.}

De Computer Modern Roman bestaat uit zo'n 70~lettertypes en
letterformaten. Omdat een aantal formaten niet standaard
aanwezig kunnen worden geacht, zijn onder de optie
\type{cmr} bijvoorbeeld de 11~punts letters gedefinieerd als
geschaalde 9~en 10~punts letters. Met \type{eul} en
\type{con} krijgen we een variant op de Computer Modern.

\toonsetup{toonkorps}

Met behulp van het commando \type{\toonkorps} kan een
overzicht worden gegenereerd van de beschikbare lettertypen.
Hieronder is het 12pt||korps Computer Modern Roman
(\type{cmr}) weergegeven. De oplettende lezer zal zien dat
niet alle varianten (standaard) beschikbaar zijn.

\toonkorps[cmr,12pt]

Zoals hieronder te zien is, is een 12pt Lucida Bright
(\type{lbr}) wat groter dan een 12pt Computer Modern Roman.
Een \type{x}||letter, bijvoorbeeld \type{\bfx} is standaard
2pt kleiner dan het op dat moment gebruikte formaat. De
grotere formaten zijn met behulp van \TEX's \type{\magstep}
geschaald.

\toonkorps[lbr,12pt]

Een opmerking tot slot. Als men een van de grotere
letterformaten heeft gekozen, bijvoorbeeld \type{\tfb}, dan
is op dat moment \type{\tf} gelijk aan \type{\tfb},
\type{\bf} gelijk aan \type{\bfb} enz. Deze werkwijze bleek
in de praktijk de voorkeur te verdienen boven terugkeer naar
het standaard letterformaat.

\paragraaf[benadrukken]{Benadrukken}
\index{benadrukken}
\index{emphasis}
\index{schuin zetten}
\index{italic zetten}
\index{scheef zetten}
\macro{\tex{em}}

Binnen de meeste macropaketten is wel het commando
\type{\em} beschikbaar. Dit commando gedraagt zich als een
kameleon, dat wil zeggen dat het zich aanpast aan de actuele
stijl. Ook binnen \CONTEXT\ is \type{\em} beschikbaar. Het
commando heeft de volgende kenmerken:

\startopsomming[opelkaar]
\som  er kan worden overgegaan op {\sl slanted} of {\it
      italic}
\som  er wordt binnen \type{\bf} overgegaan op {\bs bold
      slanted} of {\bi bold italic} (als beschikbaar)
\som  er vindt automatisch een zogenaamde \citeer {italic
      correction} plaats (\type{\/})
\stopopsomming

De vette schuine of italic letter wordt natuurlijk alleen
ondersteund als \type{\bs} en \type {\bi} als zodanig
beschikbaar zijn.

\startbuffer
De afkorting {\em em} staat voor {\em emphasis}.
{\em De afkorting {\em em} staat voor {\em emphasis}.}
{\bf De afkorting {\em em} staat voor {\em emphasis}.}
{\em \bf De afkorting {\em em} staat voor {\em emphasis}.}
{\it De afkorting em {\em staat \bf voor} emphasis.}
{\sl De afkorting em {\em staat \bf voor} emphasis.}
\stopbuffer

\startvoorbeeld
\typebuffer
\stopvoorbeeld

Het bovenstaande levert: \haalbuffer

Het voordeel van het gebruik van \type{\em} boven \type
{\it} en|/|of \type {\sl} ligt in het feit dat op deze manier
consistentie wordt afgedwongen.

Standaard is de emphasis ingesteld op {\em schuin}, maar in
deze tekst staat ze op {\em italic}. Dit is in te stellen met:

\startvoorbeeld
\starttypen
\stelkorpsomgevingin[default][em=italic]
\stoptypen
\stopvoorbeeld

\paragraaf[kapitalen]{Kapitalen}
\index{hoofdletters}
\index{kapitalen}
\index{klein||kapitalen}
\index{small||caps}
\macro{\tex{stelkapitalenin}}
\macro{\tex{KAP}}
\macro{\tex{Kap}}
\macro{\tex{kap}}
\macro{\tex{nokap}}
\macro{\tex{Kaps}}
\macro{\tex{Woorden}}
\macro{\tex{WOORDEN}}
\macro{\tex{Woord}}
\macro{\tex{karakters}}

Woorden en afkortingen kunnen in kapitalen worden
weergegeven. Zowel kleine letters als hoofdletters worden
automatisch geconverteerd. Een met \type{\kap} opgeroepen
kapitaal is een \type{x}||letter. Bij een overgang naar
schuin (\type{\sl}), vet (\type{\bf}) enz. verandert de
kapitaal mee.

\toonsetup{kap}

\toonsetup{Kap}

\toonsetup{KAP}

\toonsetup{Kaps}

Het eerste commando converteert alle letters naar
hoofdletters. Het verdient aanbeveling zelf geen
hoofdletters te gebruiken, dit omdat bij echte
klein||kapitalen (small caps) verschil bestaat tussen hoofd-
en kleine letters.

\startbuffer
Het is, gezien het grote aantal wetten dat wordt uitgevaardigd, zeer
waarschijnlijk dat de kapitaal \kap{w} het meest wordt gebruikt. Er
zijn voorbeelden te over: \kap{wvw}, \kap{ww} en \kap{bw}. Niet
iedere \kap{w} staat overigens voor een wet, neem nu \kap{www}.
\stopbuffer

\startvoorbeeld
\typebuffer
\stopvoorbeeld

heeft als resultaat:

\startrealiteit
\haalbuffer
\stoprealiteit

Een \type{\kap} binnen een \type{\kap} wordt afgevangen en
hoeft dus niet tot problemen te leiden:

\startbuffer
\kap{Kapitaalkrachtige mensen maken niet zelden de \kap{kapitale}
fout hun \kap{kapitaal} exponentieel te doen willen stijgen.
Speculatie kan namelijk tot \nokap{kapitaalvernietiging} leiden.}
\stopbuffer

\startvoorbeeld
\typebuffer
\stopvoorbeeld

of:

\startrealiteit
\haalbuffer
\stoprealiteit

We zien in dit voorbeeld dat binnen een \type{\kap} tijdelijk
het in kapitalen zetten kan worden onderbroken met
\type{\nokap}.

\toonsetup{nokap}

Het commando \type{\Kap} maakt van de eerste letter een
hoofdletter en \type{\KAP} maakt hoofdletters van de letters
die worden voorafgegaan door \type{\\}. Met \type{\Kaps}
ten slotte, kan men van meerdere woorden de eerste letter
een hoofdletter maken.

\toonsetup{stelkapitalenin}

Met dit commando kunnen wat kenmerken van kapitalen worden
ingesteld. De instelling \type {sc=ja} schakelt over op echte
{\sc Small Caps}. Met \type {titel} bepalen we of in titels
kapitalen worden gehonoreerd.

Naast deze \type{\kap}||commando's zijn er nog:

\toonsetup{Woord}

en

\toonsetup{Woorden}

Deze commando's maken van de beginletter(s) van woorden
hoofdletters. Een woord kan in zijn geheel worden omgezet in
hoofdletters met:

\toonsetup{WOORD}

We sluiten af met een voorbeeld van echte klein||kapitalen.
Als deze beschikbaar zijn, dan is het wellicht fraaier om
bij afkortingen en logo's de echte klein||kapitaal
\type{\sc} te gebruiken, dan een pseudo||kapitaal
\type{\kap}. Dit kan men instellen met de parameter
\type{letter}.

\startbuffer
Soms verwordt een afkorting tot woord zonder bepaalde betekenis, dit
geldt bijvoorbeeld voor de namen van de zendgemachtigden {\sc vara}
en {\sc vpro}. Wat heeft {\sc Pragma} eigenlijk ooit betekend?
\stopbuffer

\startvoorbeeld
\typebuffer
\stopvoorbeeld

Levert:

\startrealiteit
\haalbuffer
\stoprealiteit

{\sc Het is natuurlijk altijd mogelijk een stukje tekst in
klein||kapitalen te zetten. Besef echter wel dat onderkast
letters meer discrimineren en dus gemakkelijker lezen.}

Een belangrijk verschil tussen \type{\kap} en \type{\sc} is
dat het laatste commando staat voor een speciaal ontworpen
lettertype. Het commando \type{\kap} past zich daarentegen
aan het actuele lettertype aan: {\sl\kap{kap}},
{\bf\kap{kap}}, {\bs\kap{kap}} enz.

Sommige zetpakketten rekken de woorden uit om een
acceptabele uitlijning te krijgen. Dit wordt in \CONTEXT\
bewust niet ondersteund! Wel kunnen, bijvoorbeeld in titels,
woorden worden uitgerekt met:

\toonsetup{uitgerekt}

Er wordt bij het uitrekken uitgegaan van de actuele breedte.

\startbuffer
\hbox to \hsize {\uitgerekt{hier\\zit\\veel\\rek\\in ...}}
\hbox to 20em   {\uitgerekt{... en\\hier\\wat\\minder}}
\stopbuffer

\startvoorbeeld
\typebuffer
\stopvoorbeeld

Met \type{\\} geven we een spatie aan (\type{{}} mag ook).

\startrealiteit
\leavevmode\haalbuffer
\stoprealiteit

Dergelijke escapades zijn typografisch eigenlijk alleen
toegestaan in koppen. De aan het bovenstaande commando ten
grondslag liggende macro's lossen dit op door de tekst
karakter voor karakter in te lezen en af te handelen.

\paragraaf[typen]{Getypte tekst}
\index{getypte tekst}
\index{typen}
\index{verbatim}
\macro{\tex{starttypen}}
\macro{\tex{steltypenin}}
\macro{\tex{steltypein}}
\macro{\tex{type}}
\macro{\tex{typ}}
\macro{\tex{tex}}
\macro{\tex{typefile}}

Tekst kan in getypte vorm worden weergegeven. Daarbij wordt de
indeling in regels gehandhaafd. De tekst wordt opgenomen
tussen de commando's:

\toonsetup{starttypen}

Zoals in:

\startbuffer
\starttypen
In deze tekst zijn voorbeelden genoeg te vinden van getypte tekst.
De commando||definities en voorbeelden worden met behulp van
de genoemde commando's weergegeven, zo ook dit voorbeeld.
\stoptypen
\stopbuffer

\startrealiteit
\typebuffer
\stoprealiteit

Voor in de tekst opgenomen typewerk is het commando \type
{\type} beschikbaar.

\toonsetup{type}

Een file kan in getypte vorm in de tekst worden opgenomen met
behulp van het commando:

\toonsetup{typefile}

Instellingen vinden plaats met:

\toonsetup{steltypenin}

Deze setup be\"invloedt de display verbatim (\type
{\starttypen}) en het verbatim zetten van files (\type
{\typefile}) en buffers (\type {\typebuffer}). Het eerste,
optionele argument kan worden gebruikt om de specifiek
verbatim omgeving te specificeren.

\starttypen
\steltypenin[file][marge=standaard]
\stoptypen

Als \type{spatie=aan}, dan worden de spatie's zichtbaar
gemaakt:

\startrealiteit
\steltypenin[spatie=aan]
\starttypen
Niet-uitlijnen verdient mijns inziens de voorkeur
boven   uitlijnen   met   behulp   van   spaties
en  z e k e r  boven  het  oprekken  van  woorden
\stoptypen
\stoprealiteit

Een bijzonder geval is het volgende:

\startbuffer
\definieertypen
  [breedtypen]

\steltypenin
  [breedtypen]
  [onevenmarge=-1.5cm,evenmarge=-.75cm]
\stopbuffer

\haalbuffer

\typebuffer

Dit kan worden gebruikt als:

\startbuffer
\startbreedtypen
Soms kan een regel verbatim wel erg lang zijn, en omdat we niet afbreken,
drukken we hem op de oneven pagina's dus maar in de marge.
\stopbreedtypen
\stopbuffer

\typebuffer

Op een linker bladzijde wordt de in verbatim gezette tekst
in de kantlijn gedrukt.

\haalbuffer

We kunnen in||line verbatim instellen met:

\toonsetup{steltypein}

Als bij de instellingen \type{optie} de waarde \type{schuin}
heeft, wordt alle tekst tussen \type{<}\type{<} en
\type{>}\type{>} in een {\ttsl schuine typeletter} gezet.
Dit kan bij alle hierboven genoemde commando's. Zo levert
\type +\type{aa<+\type+<bb>+\type+>cc}+ op: \type
{aa<<bb>>cc}.

% Het gekruk met de gesplitste << voorkomt ongewenste
% ligaturen in lucida fonts.

Omwille van de leesbaarheid kan in plaats van de {\em
buitenste} haakjes ook gebruik worden gemaakt van andere
karakters dan \type+{+ en \type+}+. Er kan een eigen, niet
actief, karakter worden gekozen, bijvoorbeeld:
\type{\type+ziezo+} of \type{\type-ziezo-}. Ook kunnen de
reeds genoemde \type{<}\type{<} en \type{>}\type{>} worden
gebruikt: \type+\type<+\type+<ziezo>+\type+>+ of zelfs
\type{\type<ziezo>}.

De instelling \type{optie=commandos} maakt het mogelijk in
een getypte tekst commando's uit te voeren. Bij deze optie
wordt \texescape\ vervangen door \type{/}.

Ook deze optie is met name bedoeld voor het opstellen van
handleidingen, bijvoorbeeld als een toelichting moet worden
opgenomen:

\startvoorbeeld
\steltypenin[optie=geen]
\starttypen
\ziezo <</rm : dit commando doet niets>>
 /vdots
\ozeiz <</sl : en dit commando ook niet>>
\stoptypen
\stopvoorbeeld

De dubbele \type{<}\type{<} en \type{>}\type{>} vervullen
hier de functie van \type+{}+.

Binnen de type||commando's wordt gebruik gemaakt van
\type{\tttf}. Als we \type{\tt} hadden gebruikt, dan zou
\type{\sl} een schuine en \type{\bf} een vette typeletter
opleveren. Nu gebeurt dit dus niet:

\startvoorbeeld
\steltypenin[optie=commandos]
\starttypen
\ziezo <</rm : dit commando doet niets>>
 /vdots
\ozeiz <</sl : en dit commando ook niet>>
\stoptypen
\stopvoorbeeld

Wellicht de meest interessante optie betreft het verbatim
zetten van een programma source. We beperken ons hier tot
het verschijnsel, en verwijzen voor meer details naar de
documentatie in de files \type {verb-<<xxx>>.tex} en \type
{cont-ver.tex}. In de laatst genoemde file vinden onder
meer we de regels:

\starttypen
\definieertypen [MP]  [optie=MP]
\definieertypen [PL]  [optie=PL]
\definieertypen [JS]  [optie=JS]
\definieertypen [TEX] [optie=TEX]
\stoptypen

Allereerst zien we dat het mogelijk is een eigen verbatim
omgeving te defini\"eren. Dit gebeurt met het commando:

\toonsetup{definieertypen}

De bovenstaande definities koppelen zo'n omgeving aan een
optie.

\startbuffer
\startMP
beginfig (12) ;
  MyScale = 1.23 ;
  draw unitsquare scaled MyScale shifted (10,20) ;
endfig ;
\stopMP
\stopbuffer

\typebuffer

Dit ziet er gezet uit als:

\startrealiteit
\haalbuffer
\stoprealiteit

Deze opties zorgen er dus voor dat de tekst wordt gezet
conform de ingestelde taal. Het is mogelijk meerdere filters
te schrijven, standaard worden \METAPOST\ en \METAFONT\
ondersteund, \PERL, \JAVASCRIPT, en natuurlijk \TEX. De wijze
van weergeven is gekoppeld aan het kleurmechanisme, waarbij
gebruik wordt gemaakt van paletten; vandaar de instelling
\type{palet} in \type {\steltypenin}.

Men kan ook fontwisselingen be\"invloeden of zelfs eigen
commando's inhaken, door een waarde toe te kennen aan
\type {icommand} (identifiers), \type {vcommand} (variabelen)
 en \type {ccommand} parameters (de rest). De standaard
toekenningen zijn:

\starttypen
\steltypenin [icommando=\ttsl, vcommando=, ccommando=\tf]
\stoptypen

Tot slot bieden we nog wat alternatieven voor \type {\type}.
De met dit commando weergegeven woorden worden niet
afgebroken. Wil men dit toch, dat is er:

\toonsetup{typ}

Moch men onverhoopt de behoefte hebben een handleiding over
\TEX\ te willen zetten, dan kunnen de volgende twee
commando's van pas komen:

\toonsetup{tex}

\toonsetup{arg}

Het eerste plaatst een \tex{} voor de getypte tekst, het
tweede omringt de tekst met \arg{}.

\paragraaf{Wiskunde}
\index{wiskunde}
\index{math}
\macro{\tex{mf}}
\macro{\tex{enablembox}}
\macro{\tex{definebodyfont}}

Veel van de \TEX\ gebruikers hebben voor dit programma
gekozen omdat het zo goed is in wiskundig zetwerk. De
betrokkenheid van \TEX\ op wiskundige typografie heeft zijn
stempel gedrukt op het font mechanisme. We zullen de lezer
niet belasten met details, maar centraal element is de
familie. Elke variant vormt een eigen familie. Er is dus een
familie voor \type {\bf}, \type {\it}, enz. Binnen een
familie onderscheiden we drie leden: text, script en
scriptscript, ofwel normaal, kleiner, nog kleiner. De normale
afmetingen worden gebruikt voor de lopende tekst, de kleinere
voor bijvoorbeeld superscripts. Het volgende voorbeeld laat
zien wat de verschillende varianten doen.

\typebuffer[math-1]

Gezet wordt dit:

\startregels
\haalbuffer[math-1]
\stopregels

We zien dat de karakters zich aanpassen, maar dat de
symbolen in hetzelfde font worden gezet. Technisch gezien
worden ze gezet in het lettertype dat is toegekent aan
familie~0 (er zijn er maximaal~16), en dat is in ons geval
standaard \type {\tf}.

Dat het ook anders kan, toont het volgende voorbeeld. We
zien in dit voorbeeld een nieuw commando opduiken: \type
{\mf}, wat staat voor {\em math font}. Dit commando zorgt
ervoor dat de symbolen worden gezet in het laatst gekozen
font.

\startregels
\haalbuffer[math-2]
\stopregels

Met moet er overigens rekening mee houden dat in veel
gevallen \TEX\ de formule als geheel zet, en niet per se van
voor naar achter werkt. Instellingen aan het eind kunnen dan
ook doorwerken naar het begin.

\typebuffer[math-2]

De exacte positie van \type {\mf} is dus niet zo belangrijk,
we hadden ook kunnen zeggen:

\typebuffer[math-3]

Een ander aspect van fonts in wiskundige mode betreft
gereserveerde namen als $\sin$ en $\cos$.

\typebuffer[math-4]

In tegenstelling tot plain \TEX\ wordt hier de $\bf\sin$ ook
vet gezet.

\haalbuffer[math-4]

De 12 punts wiskundige (Computer Modern) fonts zijn
gedefinieerd met:

\typebuffer[math-5]

Het is mogelijk binnen math mode een andere \type{tf},
\type{bf} enz. te gebruiken.

\typebuffer[math-6]

Het eerdere voorbeeld wordt dan:

{\enablembox\haalbuffer[math-6]\haalbuffer[math-4]}

\paragraaf{Em en Ex}
\index[em]{\type{em}}
\index[ex]{\type{ex}}

Bij het opgeven van maten maken we onderscheid tussen
fysieke eenheden, zoals \type{pt} en \type{cm} en de interne
eenheden \type{em} en \type{ex}. De laatstgenoemden zijn
gerelateerd aan het actuele lettertype. Gebruik van interne
eenheden voorkomt vaak veel rekenwerk, omdat \TEX\ als het
ware zelf vaststelt hoe breed of hoog iets moet zijn. Enig
inzicht in deze maten kan echter geen kwaad. Zo komt een
\type{em} niet overeen met de breedte van een M, maar van
een --- (een em-dash). Als dit karakter niet beschikbaar is,
geldt een andere waarde. \in{Tabel}[emmetjes] toont enkele
voorbeelden. We zien dat de breedte van een cijfer
ongeveer \type{.5em} is. In Computer Modern Roman is de
breedte exact een halve em.

\plaatstabel
  [hier][emmetjes]
  {De breedte van een \type{em}.}
  {\haalbuffer[em-ex-1]}

Waar de \type{em} meestal in de breedte wordt gebruikt,
gebruiken we \type {ex} in de hoogte. \in{Tabel}[exjes]
toont enkele voorbeelden. We zien dat \type {1ex} redelijk
overeenkomt met de hoogte van een~x, in dit geval dus geen
kapitaal.

\plaatstabel
  [hier][exjes]
  {De hoogte van een \type{ex}.}
  {\haalbuffer[em-ex-2]}

\paragraaf[encoding]{Definities}
\index{korps+defini\"eren}
\macro{\tex{startencoding}}
\macro{\tex{startmapping}}
\macro{\tex{definecharacter}}
\macro{\tex{defineaccent}}
\macro{\tex{definecommand}}
\macro{\tex{definecasemap}}
\macro{\tex{definefontsynonym}}
\macro{\tex{definebodyfont}}
\macro{\tex{definebodyfontenvironment}}
\macro{\tex{definieerkorps}}
\macro{\tex{definieerkorpsomgeving}}
\macro{\tex{stelkorpsomgevingin}}
\macro{\tex{toonkorpsomgeving}}
\macro{\tex{definieerfontsynoniem}}
\macro{\tex{definieeralgemenestijl}}
\macro{\tex{definieerletter}}

{\em Deze paragraaf is alleen bedoeld voor nieuwsgierige
gebruikers of gebruikers die willen experimenteren met het
instellen van korpsen en lettertypes. Een aantal zaken
worden hier niet besproken, zoals de precieze definities van
accenten en encodings. Hiervoor verwijzen we naar de
voorbeelden in de broncode en de files \type {font-<<xxx>>}
en \type {enco-<<xxx>>}.}

We hebben reeds gezien dat binnen een gekozen korps allerlei
kleinere en grotere afmetingen voorkomen. Deze relaties zijn
vastgelegd met:

\startvoorbeeld
\steltypenin[optie=commandos]
\starttypen
\definieerkorpsomgeving
  [12pt]
  [        text=12pt,    <</Roman Wiskunde maten: normale afmetingen,>>
         script=9pt,     <</Roman super- en subscripts en>>
   scriptscript=7pt,     <</Roman supersuper- en subsubscripts.>>
              x=10pt,    <</Roman Pseudo kapitalen en >>
             xx=8pt,     <</Roman geneste pseudo kapitalen>>
          groot=12pt,    <</Roman Voor geval we overgaan op/tt groot>>
          klein=10pt]    <</Roman of/tt klein.>>
\stoptypen
\stopvoorbeeld

Wanneer we om een korpsgrootte vragen die niet op deze
manier is voorgedefinieerd, dan gelden verhoudingen die
overeenkomen met de bovenstaande. Men kan deze overigens
aanpassen door in plaats van bijvoorbeeld een korpsgrootte
het trefwoord \type{default} mee te geven. Als men 'even
snel' een groot korps wil defini\"eren, dan kan worden
volstaan met:

\startvoorbeeld
\starttypen
\definieerkorpsomgeving [24pt]
\stoptypen
\stopvoorbeeld

In alle gevallen waarin de gebruiker niets heeft
gedefinieerd, wordt teruggevallen op redelijke default
waarden. Zo is het mogelijk om te schakelen naar een 12.4
korps|(|omgeving), zonder dat daar bijzondere
voorinstellingen voor nodig zijn. Wanneer dit binnen een
groep gebeurt, dan hebben de instellingen een tijdelijk
karakter. Wordt een korps vaker gebruikt, dan is het
verstandig dit te defini\"eren aan het begin van de file.

Een overzicht van de verschillende samenhangende formaten
binnen een familie kan worden opgevraagd met:

\toonsetup{toonkorpsomgeving}

Voor \type{lbr} levert dit commando het volgende overzicht op:

\toonkorpsomgeving[lbr]

Voor alle gangbare formaten zijn omgevingen gedefinieerd die
in de praktijk goed voldoen. Een beginnend gebruiker zal hier
dus niets mee van doen hebben. Moch men toch wat willen
aanpassen, dan is er:

\toonsetup{stelkorpsomgevingin}

Het eigenlijke defini\"eren, dat wil zeggen, het koppelen
van commando's aan font files, kan op verschillende manieren
gebeuren. Het meeste inzicht verkrijgt men door te kijken naar
een file als \type {font-phv}.

\typebuffer[font-1]

Met \type {\definefontsynonym} koppelen we een logische
aanduiding, zoals \typ {SansBold} aan een font naam, zoals
\typ {Helvetica-Bold}. De eigenlijke koppeling aan een
filenaam vindt elders plaats, standaard in file \type
{font-fil} als:

\typebuffer[font-2]

Dit is eigenlijk de enige plek waar een systeemafhankelijke
instelling plaatsvindt. Als we onder het Karl Berry regime
werken, dan ligt de volgende instelling meer voor de hand
(zie \type {font-ber}).

\typebuffer[font-3]

Het op die manier aan elkaar koppelen van fonts kent
nauwelijks grenzen. Men mag zo vaak afbeelden als nodig. Het
is leerzaam eens in \type {font-unk} te kijken, waar de
verschillende stijlen zo worden afgebeeld dat ze door elkaar
te gebruiken zijn.

\typebuffer[font-4]

We zien dat de basisaanduiding \type{Serif} is. De default
serif fonts zijn gedefinieerd met:

\typebuffer[font-5]

Wat hier gebeurt is het volgende. We zagen reeds dat \type
{\tf} het standaard lettertype is. Hier wordt \type {\tf}
gedefinieerd als \typ{Serif sa 1} wat betekent dat het een
serif font is, geschaald op de natuurlijke korpsgrootte. Die
\type{Serif} is elders geprojecteerd op bijvoorbeeld \typ
{LucidaBright} die op haar beurt wordt afgebeeld op de
filenaam \type {lbr}.

Dit soort in||een||klap definities, met gebruik van \type
{default}, maken het mogelijk snel en comfortabel een korps
te defini\"eren. We gaan daarbij volledig voorbij aan het
gegeven dat fonts een ontwerpgrootte hebben, en het geval
wil dat \TEX\ fonts die hebben. Aangezien wij, net als de
meeste \TEX\ gebruikers, begonnen zijn met de \TEX\ fonts,
biedt \CONTEXT\ vanzelfsprekend de mogelijkheid tot zeer
nauwkeurige definities. Daar wordt dan ook van gebruik
gemaakt in de file \type {font-cmr}:

\typebuffer[font-6]

We gebruiken hier de standaard \TEX||specificaties \type
{scaled} en \type {at}, maar we zagen reeds dat \CONTEXT\
als aanvulling een combinatie van beiden biedt: \type {sa}
(scaled at). Als we geen gebruik maken van de default
definitie, luidt de definitie van de Helvetica bijvoorbeeld:

\typebuffer[font-7]

We geven in dit geval de schaalwaarde ten opzichte van de
korpsgrootte op. Analoog aan \TEX's \type{\magstep} kunnen
we hier \type{\magfactor} gebruiken: in plaats van \type{sa
1.440} kan dus \type{sa \magfactor2} worden opgegeven. Omdat
dit soort getallen niet alleen vervelend is, maar ook
onnodig geheugen gebruikt, mag men \type {1.200} vervangen
door \type {a}, enz. Deze relatie is in te stellen in de
korpsomgeving.

\typebuffer[font-8]

Als font files in alle interfaces worden gebruikt, gebruiken
we de engelse commando's. De definities vinden plaats in
files met de naam \type{font-???.tex}, zie bijvoorbeeld de
file \type{font-cmr.tex}.

\toonsetup{definieerkorps}

De instellingen \type{ex}, \type{mi}, \type{sy}, \type{ms},
\type{mb} en \type{mc} hebben betrekking op wiskundige
karaktersets. De eerste drie vinden we ook in Plain \TEX, de
laatste drie zijn nodig bij andere families. Zo zijn de
binnen \AMSTEX\ te gebruiken letters en symbolen ook binnen
\CONTEXT\ te gebruiken: \type{\definieerkorps[ams]}. Deze
zijn ondergebracht in \type{ma} en \type{mb}.

Men is overigens niet gebonden aan \type{a}||\type{d}. Bij
wijze van voorbeeld defini‰ren we een grote variant van
\type{\tf}:

\startbuffer
\definieerkorps [10pt,11pt,12pt] [rm] [tfe=ComputerModern at 48pt]
\tfe Grote Woorden.
\stopbuffer

\startvoorbeeld
\typebuffer
\stopvoorbeeld

Deze ziet er als volgt uit:

\startrealiteit
\startregelcorrectie
\haalbuffer
\stopregelcorrectie
\stoprealiteit

Nu we toch bezig zijn met defini\"eren, men kan ook
onafhankelijk van het besproken mechanisme direct een font
defini\"eren.

\starttypen
\definieerkorps[KopLetter][Regular sa 1.2]
\stoptypen

Hierna kan men \type {\KopLetter} gebruiken om van font te
wisselen. Zo nodig moet men de spati\"ering (interlinie)
instellen met \type{\stelinterliniein}, dus:

\starttypen
\KopLetter \stelinterliniein tekst \par
\stoptypen

Voor gevorderde \TEX||gebruikers is het dimensie||register
\type{\korpsgrootte} beschikbaar. Dexe variabele kan worden
gebruikt om breedtes in te stellen. Het aantal (afgeronde)
punten is beschikbaar in \type{\korpspunten}.

Tot nu toe zijn we er van uitgegaan dat een~\type{a} te
voorschijn komt als een~a. Dit is geen vanzelfsprekendheid
in geval van bijvoorbeeld een~\"a of \ae. Dit karakter is namelijk
niet in ieder font aanwezig, zeker niet in de Computer
Modern Typefaces. Vaak zal een combinatie van letters, zoals
\type{\"a}, of een commando \type{\ae} gebruikt worden om
zo'n karakter te zetten. In een aantal gevallen zal \TEX\
uit zichzelf karakters combineren, zoals \type{fl} tot fl en
niet \hbox{f}\hbox{l}. Een ander probleem vormt het omzetten
van hoofd- in kleine letters en omgekeerd. Om met dit laatste
te beginnen, hier is een voorbeeld van de \type{texnansi}
mapping:

\typebuffer[enco-1]

Dit betekent zoveel als: karakter met code 228 wordt in geval
van hoofdletters karakter 228 en wordt in kleine letters
karakter 196.

Deze definities zijn te vinden in \type {enco-ans}. Verder
vinden we in die file:

\typebuffer[enco-2]

en wat verderop:

\typebuffer[enco-3]

Zoals gezegd, accenten vormen (niet alleen in \TEX) een
geval apart. Dit is mede een gevolg van de wijze waarop
accenten worden geplaatst. Er zijn grofweg twee methoden: •f
\TEX\ plaatst de accenten zelf •f er worden karakters gebruikt
waarop de accenten al staan. De bovenstaande definities
zorgen ervoor dat dit alles goed gaat. Overigens gaan aan
dergelijke definities soms andere vooraf, zie daarvoor de
file \type {enco-ini}.

We keren nog even terug naar de fontdefinities. Het vlot
wisselen van stijl kan ook met commando's als \type {\xii}
of \type {\twelvepoint}, waarmee we voortbouwen op plain
\TEX. Dergelijke commando's worden gedefinieerd met:

\typebuffer[font-10]

De trefwoorden bij \type {\stelkorpsin} zijn gedefinieerd
in de trant van:

\typebuffer[font-11]

Bij veel elders beschreven instellingen komen we \type
{letter} of \type {kopletter} tegen. In die situaties kunnen
we een aanduiding meegeven. Met \type {\definieerletter}
zijn deze aanduidingen vastgelegd. Het derde argument
betreft de betekenis in titels van hoofdstukken, paragrafen
enz. Alleen \type {\kap} heeft daar betekenis.

\typebuffer[font-12]

We hebben in \in{paragraaf}[benadrukken] al aangegeven hoe
benadrukken kan worden ingesteld. Met oldstyle getallen ligt
dat wat anders. Er is op voorhand niet aan te geven waar die
te vinden zijn. Standaard is de instelling:

\typebuffer[font-13]

\starttypen
\definefontsynonym [OldStyle] [MathItalic]
\stoptypen

ofwel, ze worden uit hetzelfde font gehaald als de wiskundige
italic karakters.

{\em In deze paragraaf zagen we een mengelmoes aan engelse
en nederlandse commando's. We raden aan in geval van een
internationale stijldefinitie, de engelse commando's te
gebruiken. Veel van de voorbeelden zijn ontleend aan files
die deel uitmaken van de \CONTEXT\ distributie, en zijn
derhalve achter de schermen engels.

Er zijn naast de hier besproken commando's nog andere
beschikbaar, zoals macro's om accenten te manipuleren. Deze
worden in de file \type {font-ini} besproken. Ook kan men
nadere informatie vinden in \type {core-fnt} en allerlei
geintjes in \type {supp-fun}. Genoeg voer dus voor
liefhebbers!}

\paragraaf{Omhullende tekst}
\index{voetteksten}
\index{hoofdteksten}
\index{menu's}

We maken onderscheid tussen lopende en omhullende tekst.
Onder de omhullende tekst verstaan we hoofd- en voetregels
en interactieve elementen, zoals menu's. Deze zin maakt deel
uit van de lopende tekst. Al het voorgaande had voornamelijk
betrekking op de lopende tekst. De lettertypen van de
omhullende tekst worden ingesteld met verschillende
commando's. Meestal zal dit in termen van \type{letter=vet}
gebeuren, maar instellingen als \type{letter=\ss\bf} zijn
ook toegestaan. Instellingen als \type{letter=\ssbf} liggen
minder voor de hand, omdat in dat geval \type{\kap} en
dergelijke niet correct werken.

Het wisselen van stijl (\type{\ss}) kost tijd. Meestal is
dit geen probleem, maar wanneer we bijvoorbeeld interactieve
menu's gebruiken met tientallen items, dan heeft het
wisselen merkbaar invloed. In dat geval is een meer
effici‰nte wijze van wisselen mogelijk:

\startvoorbeeld
\starttypen
\stellayoutin[letter=\ss]
\stoptypen
\stopvoorbeeld

Aanvullende instellingen vinden vervolgens plaats met de
betreffende commando's en de parameter \type{letter},
bijvoorbeeld:

\startvoorbeeld
\starttypen
\stelvoetin[letter=vet]
\stoptypen
\stopvoorbeeld

Overigens gelden voor de omhullende tekst altijd de
instellingen van \type{\stelkorpsin}, ook als de lopende
tekst daarvan afwijkt.

\paragraaf{Files}
\index{font files}

In \in{tabel}[tab:fontfiles] zijn enkele van de standaard
meegeleverde font definitie files opgenomen. Deze worden
dus aangeroepen op de drie laatste letters.

\plaatstabel
  [hier][tab:fontfiles]
  {Enkele standaard meegeleverde font definitie files
   ($\type{pos} = \type{ptm} + \type{phv} + \type{pcr}$).}
  {\haalbuffer[fontfil]}

De meest gebruikte encoding vectoren zijn standaard geladen,
zoals \type {ans}, \type {ec} en \type{il2}. Men kan een
extra encoding laden met \type {\useencoding}, maar dat is
zelden nodig. De twee in \in {tabel} [tab:encofiles] laatst
genoemde files hebben betrekking op het direct ondersteunen
van andere dan de standaard toetsenbord karakters. Deze
moeten expliciet worden geladen.

\plaatstabel
  [hier][tab:encofiles]
  {Enkele standaard meegeleverde encoding definitie files.}
  {\haalbuffer[encofil]}

\paragraaf{Figuren}
\index{figuren+lettertypes}

Tot slot nog dit. Als in een tekst figuren worden opgenomen,
dan ontkomt men er vaak niet aan in die figuren tekst op te
nemen. Meestal zijn daarbij de \TEX||fonts niet beschikbaar.
Als in de tekst zelf een serif wordt gebruikt, kan
bijvoorbeeld in een figuur uitstekend een Helvetica worden
gebruikt. In \in{figuur}[fig:helvetica] is bijvoorbeeld
gebruik gemaakt van een Helvetica. In het onderschrift
gebruiken we Knuth's Sans Serif.

\plaatsfiguur
  [hier]
  [fig:helvetica]
  {\ss Het gebruik van lettertypes in figuren.}
  {\externfiguur[bor0129]}

\stoponderdeel

