On Fri, 2008-04-25 at 15:29 -0700, Sairus Patel wrote: > > I'd be *very* suspicious of any application > that tried to disable the normal system font management > > [ I'm assuming that by "the normal system font > management" you mean FontConfig's fallback mechanism. ] > > I believe I have good reasons to do so. I want my > app to have its own fallback mechanism. This > fallback mechanism will not just replace one font > with another, as FontConfig seems to be doing, > but do the fallback on a grapheme cluster > granularity. (My app does its own layout, parsing > GSUB and GPOS and other OT tables.) For this, I > need to be able to tell whether a particular font > is present on the system or not. Fontconfig doesn't do any of the font substitution, it simply provides information about the available fonts. It certainly isn't responsible for doing glyph-by-glyph substitution; that obviously couldn't work. Pango, for instance, does precisely what you're looking to do as it builds sets of glyphs based on the input unicode stream and the set of fonts returned by fontconfig. > > > I'd say look up gucharmap's code > > gucharmap doesn't seem to use FontConfig (I > grepped for "Fc" and got no matches), but maybe > it uses another facility e.g. Pango, which relies > on FC. So it doesn't really answer my question > about whether I can get FontConfig to tell me > whether a particular font is present on the system or not. The FcList functions can tell you whether a specific font is available, or you can use the FcMatch functions and simply check the returned font family. Fontconfig is supposed to provide a central database of available fonts with some simple search operations to look for suitable font sets for your application. If the search operations provided can't do what you want, we should add some that do. Working around the library doesn't make sense -- your application performance will suffer badly if you end up constructing your own font database as fontconfig is both reasonably efficient and also generally integrated into the package management system from your operating system to ensure reliable and fast font package management. -- keith.packard@xxxxxxxxx
Attachment:
signature.asc
Description: This is a digitally signed message part
_______________________________________________ Fontconfig mailing list Fontconfig@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/fontconfig