diff options
author | Jan Djärv <jan.h.d@swipnet.se> | 2012-10-21 20:48:11 +0200 |
---|---|---|
committer | Jan Djärv <jan.h.d@swipnet.se> | 2012-10-21 20:48:11 +0200 |
commit | ef44695952ad2baac8a111fb3012ec16c74fdd62 (patch) | |
tree | d3bdb37d6c63c828e435e48b49f17d2cd8ca5871 /src/nsfont.m | |
parent | 5ec86886a75267e8fafe26102d32055d1376808b (diff) | |
download | emacs-ef44695952ad2baac8a111fb3012ec16c74fdd62.tar.gz |
* nsfont.m (nsfont_open, ns_glyph_metrics): Force integer advancement
for screen font.
(nsfont_draw): Turn off LCD-smoothing.
Fixes: debbugs:11484
Diffstat (limited to 'src/nsfont.m')
-rw-r--r-- | src/nsfont.m | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/nsfont.m b/src/nsfont.m index 7c9f05aa0bb..4f29d1d54a9 100644 --- a/src/nsfont.m +++ b/src/nsfont.m @@ -797,7 +797,13 @@ nsfont_open (FRAME_PTR f, Lisp_Object font_entity, int pixel_size) block_input (); /* for metrics */ +#ifdef NS_IMPL_COCOA + sfont = [nsfont screenFontWithRenderingMode: + NSFontAntialiasedIntegerAdvancementsRenderingMode]; +#else sfont = [nsfont screenFont]; +#endif + if (sfont == nil) sfont = nsfont; @@ -1229,6 +1235,7 @@ nsfont_draw (struct glyph_string *s, int from, int to, int x, int y, else CGContextSetShouldAntialias (gcontext, 1); + CGContextSetShouldSmoothFonts (gcontext, NO); CGContextSetTextMatrix (gcontext, fliptf); if (bgCol != nil) @@ -1372,7 +1379,12 @@ ns_glyph_metrics (struct nsfont_info *font_info, unsigned char block) #endif block_input (); - sfont = [font_info->nsfont screenFont]; +#ifdef NS_IMPL_COCOA + sfont = [font_info->nsfont screenFontWithRenderingMode: + NSFontAntialiasedIntegerAdvancementsRenderingMode]; +#else + sfont = [font_info->nsfont screenFont]; +#endif font_info->metrics[block] = xzalloc (0x100 * sizeof (struct font_metrics)); if (!(font_info->metrics[block])) |