[Fontconfig] how to recognize a fallback character
Werner LEMBERG
wl at gnu.org
Wed Aug 22 09:06:03 PDT 2012
>> we have a problem within lilypond. This is probably a pango
>> question also, but let's start here :-)
>
> I'd like to hear more about the problem.
Actually, we have two problems:
(1) The fallback font problem mentioned in the previous mail; you
can find the full report here, together with a proposed fix
(which doesn't work as expected, thus writing to this list):
http://code.google.com/p/lilypond/issues/detail?id=2761
(2) For some unknown reasons yet, we get different output for the
same font on GNU/Linux and Windows. While the former contains
ligatures (like `fi') and kerning, the latter doesn't have this.
We suspect a Pango problem since I/O snooping has shown that the
same fonts are used on both platforms.
The kerning problem is reported here:
http://code.google.com/p/lilypond/issues/detail?id=2657
but the discussion mainly happens here because the ligature
problem has the same origin, we believe:
http://code.google.com/p/lilypond/issues/detail?id=2656
Note that we distribute special versions of the CenturySchL
fonts as part of the lilypond bundle; we convert the Type1 fonts
to OTF with FontForge, stripping off some ligatures (like
`i+j->ij') which shouldn't be active by default.
> One way I have suggested to people in the past is to load a font for
> the following two patters: "SomeFamilyName,sans" and
> "SomeFamilyName,serif". If the two fonts have the same family name,
> you got a match, otherwise a fallback.
Nice idea!
> But hearing lilypond, I smell you want to load a font you are
> shipping yourself.
Yes. We have two font interfaces: For music and musical symbols,
lilypond itself manages the font processing, using fontconfig to
locate the font $(Q#|(B we simply add lilypond's font directory to get exact
matches. For text strings (including musical symbols if part of the
text), we delegate everything to pango.
> I assume lilypond uses Unicode-encoded musical symbols and pango to
> render them? That's really cool.
It works without problems, at least on GNU/Linux. Our problems are
with standard fonts, more or less.
> There are ways to force pangofc to load the font you want, they are
> just not documented. I'll be happy to explain those.
This sounds *very* interesting!
Werner
More information about the Fontconfig
mailing list