Hi, The beta has some new font trickery: support for variable fonts. This is still experimental but around the context meeting i expect the user interface etc to be stable. There is a bit of magic involved in the transformations along design axis because not only shapes change but also positional features get influenced (e.g kerning). Variable fonts are defined in the opentype 1.8 standard but there isnot much more known about them. There are a few example fonts already out there. The only reasonable ones i could find were Avenir Next Variable and Adobe Variable Font Prototype (which is a rip off of some other font). I have no clue how well these fonts are because I guess that getting all the features right is not that trivial (so it's hard to decide if something weird is due to the font or to context but we'll get there eventually). Using these fonts should be transparent in the sense that it should just work. As the shapes are transformed along axis the pdf has to get the right stuff and currently there are two methods: inline shapes (it's how i explored things) and native. For native one needs a version of luatex with a trivial extension (most works happens in the font loader) and that version (1.05) will be released on the garden after the tl code freeze (tl will have 1.04). One can force inline shapes but it will be done automatically when one runs a luatex that lacks the small extension needed. Anyway, it provides users a way to play a bit with this new technology so that we can come up with a (maybe more extensive) user interface in context. It also permits WS to adapt his selectfont mechanism. \definefontfeature [default:shaped] [default] [axis={width:900,weight:100}] \definefont [SomeFont] [name:avenirnextvariable*default] \SomeFont \input ward\par \definefont [SomeFont] [name:avenirnextvariable*default:shaped] \SomeFont \input ward\par \definefont [SomeFont] [name:avenirnextvariableregular*default] \SomeFont \input ward\par \definefont [SomeFont] [name:avenirnextvariablemedium*default] \SomeFont \input ward\par \definefont [SomeFont] [name:adobevariablefontprototypeextralight*default] \SomeFont \input ward\par \definefont [SomeFont] [name:adobevariablefontprototypelight*default] \SomeFont \input ward\par etc etc So, one can either use a predefined instance or ask for a user defined instance. The s-fonts-variable.mkiv style can be used to identify proprties, as can mtxrun --script font --list --pattern=aven* --info which returns, among other things mtx-fonts | mtx-fonts | instances : regular medium bold heavy condensed mediumcondensed boldcondensed heavycondensed mtx-fonts | So, keep in mind that it's experimental and will evolve in sync with my understanding of what the standard expects. Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl -----------------------------------------------------------------
participants (1)
-
Hans Hagen