Font feature switches

Dear All,

when preparing a short blog article recently I've realized a quite limiting
gap in the FO standard. In this article http://drifted.in/publishing/ I
compare various dynamic PDF engines according to the typographic quality of
their outputs.

The problem of XSL-FO is the lack of font feature switches:
1) enable/disable kerning
2) enable/disable various ligature types
3) enable/disable smallcaps and old-style figures

Additionally I can't see any syntax to enable microtypographic features:
a) protrusion (hanging punctuation)
b) expansion

Some FO engines apply kerning (when specified in the font).
Some FO engines handle ligatures (when specified in the config file).

But there is no way to control this behaviour locally with the FO code. Once
the feature is available or the corresponding option is enabled, it is
applied to the entire document.

I like the HTML5/CSS way to control these font features with 'font-kerning',
'font-feature-settings' and 'font-variant' CSS properties.

There is also proposals for 'hanging-punctuation', but the current version
http://dev.w3.org/csswg/css-text/#hanging-punctuation-property seems to be
very limited.

While I understand there is no big demand for these, it would be nice to
have this covered in the standard, or in the form of its extension. It could
also help FO processor vendors to unify the interface for handling these
features.

What do you think?

Regards, Jan

PS: Any comments and corrections to that article are appreciated (out-of the
list or directly via Disqus). Thanks.

Received on Saturday, 21 June 2014 15:23:00 UTC