From: Keith Packard Date: Thu, 25 Oct 2007 08:03:40 +0000 (-0700) Subject: Handle UltraBlack weight. X-Git-Tag: 2.4.91~10 X-Git-Url: https://git.wh0rd.org/?p=fontconfig.git;a=commitdiff_plain;h=79641a3b0c2b4a0c2e1a315028f0e54a9d846003 Handle UltraBlack weight. UltraBlack is weight 950 on the CSS scale; handle this by name and value encoding it as fontconfig weight 215. --- diff --git a/fontconfig/fontconfig.h b/fontconfig/fontconfig.h index f055cdb..17048e3 100644 --- a/fontconfig/fontconfig.h +++ b/fontconfig/fontconfig.h @@ -136,6 +136,8 @@ typedef int FcBool; #define FC_WEIGHT_ULTRABOLD FC_WEIGHT_EXTRABOLD #define FC_WEIGHT_BLACK 210 #define FC_WEIGHT_HEAVY FC_WEIGHT_BLACK +#define FC_WEIGHT_EXTRABLACK 215 +#define FC_WEIGHT_ULTRABLACK FC_WEIGHT_EXTRABLACK #define FC_SLANT_ROMAN 0 #define FC_SLANT_ITALIC 100 diff --git a/src/fcfreetype.c b/src/fcfreetype.c index da2aa80..3265a38 100644 --- a/src/fcfreetype.c +++ b/src/fcfreetype.c @@ -982,6 +982,9 @@ static const FcStringConst weightConsts[] = { { (FC8) "superbold", FC_WEIGHT_EXTRABOLD }, { (FC8) "ultrabold", FC_WEIGHT_ULTRABOLD }, { (FC8) "bold", FC_WEIGHT_BOLD }, + { (FC8) "ultrablack", FC_WEIGHT_ULTRABLACK }, + { (FC8) "superblack", FC_WEIGHT_EXTRABLACK }, + { (FC8) "extrablack", FC_WEIGHT_EXTRABLACK }, { (FC8) "black", FC_WEIGHT_BLACK }, { (FC8) "heavy", FC_WEIGHT_HEAVY }, }; @@ -1439,8 +1442,10 @@ FcFreeTypeQueryFace (const FT_Face face, weight = FC_WEIGHT_BOLD; else if (os2->usWeightClass < 850) weight = FC_WEIGHT_EXTRABOLD; - else if (os2->usWeightClass < 950) + else if (os2->usWeightClass < 925) weight = FC_WEIGHT_BLACK; + else if (os2->usWeightClass < 1000) + weight = FC_WEIGHT_EXTRABLACK; if ((FcDebug() & FC_DBG_SCANV) && weight != -1) printf ("\tos2 weight class %d maps to weight %d\n", os2->usWeightClass, weight);