From d5804e3937a961736e5cef0e8a70eacf91ee00bb Mon Sep 17 00:00:00 2001 From: Raph Levien Date: Mon, 22 Sep 2014 11:16:04 -0700 Subject: Fine-tune fake-bolding condition The old logic for fake bolding results in no fake bolding for a bold span on a light weight (300) because the target weight (600 in this case) didn't meet the condition. This patch fine-tunes the threshold to enable fake bolding for this. Bug: 17587185 Change-Id: I04abd00a74240cbed79c417f81486aa2158b2806 --- libs/minikin/FontFamily.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/libs/minikin/FontFamily.cpp b/libs/minikin/FontFamily.cpp index ab6ba20..f688a33 100644 --- a/libs/minikin/FontFamily.cpp +++ b/libs/minikin/FontFamily.cpp @@ -141,11 +141,11 @@ static int computeMatch(FontStyle style1, FontStyle style2) { } static FontFakery computeFakery(FontStyle wanted, FontStyle actual) { - // If desired weight is bold or darker, and 2 or more grades higher - // than actual (for example, medium 500 -> bold 700), then select - // fake bold. + // If desired weight is semibold or darker, and 2 or more grades + // higher than actual (for example, medium 500 -> bold 700), then + // select fake bold. int wantedWeight = wanted.getWeight(); - bool isFakeBold = wantedWeight >= 7 && (wantedWeight - actual.getWeight()) >= 2; + bool isFakeBold = wantedWeight >= 6 && (wantedWeight - actual.getWeight()) >= 2; bool isFakeItalic = wanted.getItalic() && !actual.getItalic(); return FontFakery(isFakeBold, isFakeItalic); } -- cgit v1.2.3