Changes

Jump to navigation Jump to search
79 bytes added ,  22:40, 11 August 2005
m
pre -> texcode
Bill creates a <tt>type-sabon</tt> typescript file. Our example starts from the same place:
<texcode>% % Adobe Sabon % \usetypescriptfile[type-buy] \loadmapfile[texnansi-adobe-sabon.map] \starttypescript [serif] [sabon] [texnansi] \definefontsynonym [Sabon-Roman] [texnansi-sar] [encoding=texnansi] \definefontsynonym [Sabon-Bold] [texnansi-sab] [encoding=texnansi] \definefontsynonym [Sabon-Italic] [texnansi-sai] [encoding=texnansi] \definefontsynonym [Sabon-Bold-Italic] [texnansi-sabi] [encoding=texnansi] \definefontsynonym [Sabon-Roman-SmallCaps][texnansi-sarsc] [encoding=texnansi] \definefontsynonym [Sabon-Italic-OSF] [texnansi-saiof] [encoding=texnansi] \definefontsynonym [Sabon-Bold-OSF] [texnansi-sabof] [encoding=texnansi] \definefontsynonym [Sabon-Bold-Italic-OSF][texnansi-sabio] [encoding=texnansi] \stoptypescript</texcode>
The sabon encoding typescript remains the same from Bill's example.
The name typescript gains a few more entries, however:
<texcode>\starttypescript [serif] [sabon] [name] \usetypescript[serif][fallback] \definefontsynonym [Serif] [Sabon-Roman] \definefontsynonym [SerifBold] [Sabon-Bold] \definefontsynonym [SerifItalic] [Sabon-Italic] \definefontsynonym [SerifBoldItalic] [Sabon-Bold-Italic] \definefontsynonym [SerifCaps] [Sabon-Roman-SmallCaps]</texcode>
The above remain the same, but then there follow some more definitions:
<texcode>
\definefontsynonym [SerifRegular] [Serif]
</texcode>
SerifRegular must be defined as a synonym to Serif, because of the way we navigate the font variants internally. The following synonyms have "OsF" appended to the existing font synonyms on the left side, and point to the defined oldstyle figure variations on the right hand side:
<texcode> \definefontsynonym [SerifRegularOsF] [Sabon-Roman-SmallCaps] \definefontsynonym [SerifBoldOsF] [Sabon-Bold-OSF] \definefontsynonym [SerifItalicOsF] [Sabon-Italic-OSF] \definefontsynonym [SerifSlantedOsF] [Sabon-Italic-OSF] \definefontsynonym [SerifBoldItalicOsF] [Sabon-Bold-Italic-OSF] \definefontsynonym [SerifBoldSlantedOsF][Sabon-Bold-Italic-OSF] \definefontsynonym [SerifCapsOsF] [Sabon-Roman-SmallCaps]</texcode>
Finally, we define a variant. It says, in shorthand: ''for this Serif font, a ''<tt>\Var[osf]</tt>'' command will postpend ''OsF'' to the current font name, and switch'':
<texcode> \definefontvariant [Serif][osf][OsF] \stoptypescript
\starttypescript [Sabon] \definetypeface [Sabon] [rm] [serif] [sabon] [default] [encoding=texnansi] \stoptypescript</texcode>
Usage would proceed this way:
<texcode>\usetypescriptfile[type-sabon] \usetypescript[Sabon] \setupbodyfont[Sabon] \starttext This is Sabon roman 0123456789, old-style \Var[osf] 0123456789, {\it\Var[osf] italic 0123456789,} {\bf bold 01234\Var[osf]56789,} and {\bi bold-italic \Var[osf]0123456789.} {\em \bf This is also \Var[osf] bold-italic 0123456789.} \stoptext</texcode>
[[Category:Fonts]]

Navigation menu