[Fontconfig] how to recognize a fallback character
Behdad Esfahbod
behdad at behdad.org
Wed Aug 22 09:19:53 PDT 2012
On 08/22/2012 12:06 PM, Werner LEMBERG wrote:
>
> (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.
Incidentally I was checking the basic-win32.c Pango module today and noticed
that it shortcircuits calling into Uniscribe if !ScriptIsComplex(). That
would explain what you are seeing. I like to remove that hack and always call
Uniscribe unconditionally...
Who knows, soon I may even remove the Uniscribe module and rely on HarfBuzz
Uniscribe backend on Windows.
If someone wants to try my hypothesis I'd be happy to help.
>> 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!
Create a FcConfig, don't add any font directories to it, add the font file you
want using FcConfigAppFontAddFile. Then create a PangoFcFontMap solely for
use with this configuration. Install/uninstall your FcConfig whenever calling
Pango using your fontmap.
Eventually I'll add API to attach FcConfig's to PangoFcFontMap. I even
remember Owen had a draft patch for that.
HTH,
behdad
> Werner
More information about the Fontconfig
mailing list