[Fontconfig] Marking glyphs as deliberately blank, per font

Nicolas Mailhot nicolas.mailhot at laposte.net
Thu Nov 26 10:44:53 PST 2009


Le jeudi 26 novembre 2009 à 13:14 -0500, Behdad Esfahbod a écrit :
> Nicolas, all that talk makes sense, but unless a concrete proposal for
> how to 
> change fontconfig comes in, I don't know what to do about it.

To sum up, and from a pure fontconfig user POW (I don't want to know how
the code looks like), I think you could solve many user pains by making
it possible to use

<font>
 <family>some family name</family>
 <style>some style name</style>
 <format>some font format name</format>
 <unicode>
   <min>some-unicode-value</min>
   <max>some-greater-unicode-value</max>
 <unicode>
 <lang>some fontconfig orth id</lang>
</font>

instead of plain
<family>some family name</family>

in all the places <family/> is exposed in fontconfig files today

In other words, permit users to write rules that apply to just a
specific sub-element of a font family

In this notation :

1. family is an optional element. It can occur several times (if you
want a rule to apply to multiple font families). When family is absent
the rule applies to all font families

2. style is an optional element. It can occur several times (if you want
a rule to apply to multiple styles). When style is absent the rule
applies to all styles

3. format is an optional element. It can occur several times (if you
want a rule to apply to multiple font formats). When format is absent
the rule applies to all formats

4. unicode  is an optional element. It can occur several times (if you
want a rule to apply to multiple unicode blocks). When unicode is absent
the rule applies to the complete encoding range

5. lang  is an optional element. It can occur several times (if you want
a rule to apply to multiple lang blocks). When lang is absent the rule
applies to all langs encoding range. Lang means whatever glyphs are
associated to a particular lang in an .orth file.

And it would also be useful to define a <not/> operator, for example
<not>
 <lang>ja_Ja</lang>
</not>

apply the rule to all the elements defined before, except for the glyphs
associated with ja_Ja

Of course this is only my personal opinion, if anyone on the list
strongly disagrees with this design please speak up now

Regards,

-- 
Nicolas Mailhot




More information about the Fontconfig mailing list