Adam Lindsay wrote:
Vit Zyka said this at Wed, 9 Feb 2005 22:34:13 +0100:
The question is how to elegantly switch from standard (st2) tfm to extended (st3) tfm when the glyph is not present in st2 - with preserving \rm, \bf, \it, \bi.
Example: {\bf Bold text with special char \textplus} where \texplus is bold variant from st3 encoded tfm. It is understandable?
Interesting. There are a couple possibilities, I think. My current favourite, \variant[something], is essentially a convention that's built on top of the font synonym mechanism. There's an example given at: http://contextgarden.net/Font_Variants ...but I haven't done a proper write-up yet.
basically, you declare a variant set for a (Serif/Sans/Mono) family: \definefontvariant [Serif] [exp] [-Expert] % [fam] [call abbrev] [synonym suffix]
And then you create font synonyms for each of the possible seven SerifBlah-Expert fonts that would be called, e.g.:
\definefontsynonym [SerifRegular] [AndulkaText] \definefontsynonym [SerifRegular-Expert] [AndulkaTextExpert] \definefontsynonym [SerifBold] [AndulkaTextBold] \definefontsynonym [SerifBold-Expert] [AndulkaTextBoldExpert]
Where the AndulkaText font resolves to your st2 encoding, and AndulkaTextExpert is in your st3 encoding. (I haven't tried this trick with different encodings, but it *should* work!)
You can then call the proper variant with {\bf Hi there \Var[exp]+}, or create a level of indirection with your \textplus macro so that it calls the [exp] variant and the glyph together.
The Storm fonts are beautiful. Sigh. Have fun with them...
Thank you, Adam, for tips and explanation. Now I am a bit short of time, but after that I will have a look at it. And want introduce the Storm font support. But ... seeing Andulka, some support has already exists there, has not it? I would not like to discover wheel ;-) Vit