From 4e0cc3517be50ff1d1b99209018f3a8dc388d289 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jan=20Dj=C3=A4rv?= Date: Fri, 31 Oct 2014 19:41:07 +0100 Subject: [PATCH] * macfont.m (macfont_glyph_extents): Turn off syntetic bold if force_integral_p (i.e. no antialias). (macfont_draw): Check ns_antialias_text, also turn off syntetic bold if no antialias. Fixes: debbugs:18876 --- src/ChangeLog | 5 +++++ src/macfont.m | 7 ++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index c516d348d84..91bd0e1137c 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,10 @@ 2014-10-31 Jan Djärv + * macfont.m (macfont_glyph_extents): Turn off syntetic bold + if force_integral_p (i.e. no antialias). + (macfont_draw): Check ns_antialias_text, also turn off syntetic + bold if no antialias (Bug#18876). + * emacs.c (main): Don't chdir to $HOME on Cocoa if --chdir was given (Bug#18846). diff --git a/src/macfont.m b/src/macfont.m index 69bde9f66a7..9e3c7e05f3f 100644 --- a/src/macfont.m +++ b/src/macfont.m @@ -1101,7 +1101,7 @@ macfont_glyph_extents (struct font *font, CGGlyph glyph, bounds.size = CGSizeApplyAffineTransform (bounds.size, synthetic_italic_atfm); } - if (macfont_info->synthetic_bold_p) + if (macfont_info->synthetic_bold_p && ! force_integral_p) { CGFloat d = - synthetic_bold_factor * mac_font_get_size (macfont) / 2; @@ -2768,7 +2768,8 @@ macfont_draw (struct glyph_string *s, int from, int to, int x, int y, CGFloat advance_delta = 0; int y_draw = -s->ybase; int no_antialias_p = - (macfont_info->antialias == MACFONT_ANTIALIAS_OFF + (NILP (ns_antialias_text) + || macfont_info->antialias == MACFONT_ANTIALIAS_OFF || (macfont_info->antialias == MACFONT_ANTIALIAS_DEFAULT && font_size <= macfont_antialias_threshold)); @@ -2792,7 +2793,7 @@ macfont_draw (struct glyph_string *s, int from, int to, int x, int y, atfm = synthetic_italic_atfm; else atfm = CGAffineTransformIdentity; - if (macfont_info->synthetic_bold_p) + if (macfont_info->synthetic_bold_p && ! no_antialias_p) { CGContextSetTextDrawingMode (context, kCGTextFillStroke); CGContextSetLineWidth (context, synthetic_bold_factor * font_size); -- 2.39.5