aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/ports/SkFontConfigInterface_direct.cpp
diff options
context:
space:
mode:
authorGravatar Ben Wagner <bungeman@google.com>2017-08-14 11:06:12 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-05-18 17:40:54 +0000
commit13197b8d4f1000249fa98b587c047d35f4ab1cf2 (patch)
tree326a2b2b8346a79426f496613012e9d333a8832f /src/ports/SkFontConfigInterface_direct.cpp
parent4ee88511bc04dcfb66c4c58d3b600f329bedb44e (diff)
Add BOOK and DEMI_LIGHT.
It would be nice to use FcWeightToOpenType but this was buggy until 2.12.4. Change-Id: Ifcf9bfc783ea63c684bedb2a22267e97461d4945 Reviewed-on: https://skia-review.googlesource.com/129182 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
Diffstat (limited to 'src/ports/SkFontConfigInterface_direct.cpp')
-rw-r--r--src/ports/SkFontConfigInterface_direct.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/ports/SkFontConfigInterface_direct.cpp b/src/ports/SkFontConfigInterface_direct.cpp
index 51a72e2816..875000daa5 100644
--- a/src/ports/SkFontConfigInterface_direct.cpp
+++ b/src/ports/SkFontConfigInterface_direct.cpp
@@ -410,6 +410,10 @@ template<int n> struct SkTFixed {
static const SkFixed value = static_cast<SkFixed>(n << 16);
};
+#ifndef FC_WEIGHT_DEMILIGHT
+#define FC_WEIGHT_DEMILIGHT 65
+#endif
+
static SkFontStyle skfontstyle_from_fcpattern(FcPattern* pattern) {
typedef SkFontStyle SkFS;
@@ -417,6 +421,8 @@ static SkFontStyle skfontstyle_from_fcpattern(FcPattern* pattern) {
{ SkTFixed<FC_WEIGHT_THIN>::value, SkTFixed<SkFS::kThin_Weight>::value },
{ SkTFixed<FC_WEIGHT_EXTRALIGHT>::value, SkTFixed<SkFS::kExtraLight_Weight>::value },
{ SkTFixed<FC_WEIGHT_LIGHT>::value, SkTFixed<SkFS::kLight_Weight>::value },
+ { SkTFixed<FC_WEIGHT_DEMILIGHT>::value, SkTFixed<350>::value },
+ { SkTFixed<FC_WEIGHT_BOOK>::value, SkTFixed<380>::value },
{ SkTFixed<FC_WEIGHT_REGULAR>::value, SkTFixed<SkFS::kNormal_Weight>::value },
{ SkTFixed<FC_WEIGHT_MEDIUM>::value, SkTFixed<SkFS::kMedium_Weight>::value },
{ SkTFixed<FC_WEIGHT_DEMIBOLD>::value, SkTFixed<SkFS::kSemiBold_Weight>::value },
@@ -460,6 +466,8 @@ static void fcpattern_from_skfontstyle(SkFontStyle style, FcPattern* pattern) {
{ SkTFixed<SkFS::kThin_Weight>::value, SkTFixed<FC_WEIGHT_THIN>::value },
{ SkTFixed<SkFS::kExtraLight_Weight>::value, SkTFixed<FC_WEIGHT_EXTRALIGHT>::value },
{ SkTFixed<SkFS::kLight_Weight>::value, SkTFixed<FC_WEIGHT_LIGHT>::value },
+ { SkTFixed<350>::value, SkTFixed<FC_WEIGHT_DEMILIGHT>::value },
+ { SkTFixed<380>::value, SkTFixed<FC_WEIGHT_BOOK>::value },
{ SkTFixed<SkFS::kNormal_Weight>::value, SkTFixed<FC_WEIGHT_REGULAR>::value },
{ SkTFixed<SkFS::kMedium_Weight>::value, SkTFixed<FC_WEIGHT_MEDIUM>::value },
{ SkTFixed<SkFS::kSemiBold_Weight>::value, SkTFixed<FC_WEIGHT_DEMIBOLD>::value },