On Sun, 7 Nov 2021 01:41:16 -0500, Michael Brennen wrote: > The FC routine called from gs to get the weight is this: > > result = FcPatternGetInteger (font, FC_WEIGHT, 0, &weight_fc); > > My debug messages, slightly modified from the gs debug messages: > > FC_WEIGHT failed to match on Bahnschrift (and Skia) > FC_WEIGHT failed to match on 32764 > > weight_fc is an int where the result is stored; that is what is > showing 32764 upon return. That is probably just a rubbish uninitialized value. The function is probably returning FcResultNoMatch because there is no such entry in the pattern. Which is odd, because looking further back at the gp_enumerate_fonts_init() routine in base/gp_unix.c, it is specifically asking for a set of info that includes the weight, from the fonts matching a specified pattern. Maybe worth trying to dump out the full set of patterns returned, to see what is in there? > I quickly become tangled in FC’s fc_pat.c, which is where most of > this seems to happen. I am not sure what an ELT is (element?) is; I > found where it is retrieved by indexing into some data structure, but > I don’t know what that is. Seems properties can be multivalued, so you also pass an “id” (actually an index) to indicate which value element you want. I normally pass 0. ;) > variable: False(s) Is this the same Bahnschrift that I found here <https://freefontsfamily.com/bahnschrift-font-free-download/>? That archive has 15 different TTF files in it, and some of them report True for this property. By the way, why do the Ghostscript developers believe that Fontconfig cannot return a font’s PostScript name? That seems to work for me ...