LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 770|回复: 3

终于到周末了,发个早前收集的一个cairo补丁

[复制链接]
发表于 2009-2-13 19:00:40 | 显示全部楼层 |阅读模式
来自于sunmoon1997,好像很难找了(?),主要解决simsun英文粗体(个人主要是windows习惯了),如有必要请添加到gentoo-china Overlay。
  1. --- src/cairo-ft-font.c        2007-06-08 01:45:39.000000000 +0800
  2. +++ src/cairo-ft-font.c.new        2007-11-07 18:52:50.000000000 +0800
  3. @@ -1896,6 +1896,7 @@
  4.      FT_Glyph_Metrics *metrics;
  5.      double x_factor, y_factor;
  6.      cairo_bool_t vertical_layout = FALSE;
  7. +    cairo_bool_t fake_bitmap_glyph = FALSE;
  8.      cairo_status_t status;
  9.      face = _cairo_ft_unscaled_font_lock_face (unscaled);
  10. @@ -1914,6 +1915,16 @@
  11.         (info & CAIRO_SCALED_GLYPH_INFO_SURFACE) == 0)
  12.         load_flags |= FT_LOAD_NO_BITMAP;
  13. +    if (info & CAIRO_SCALED_GLYPH_INFO_SURFACE &&
  14. +        scaled_font->ft_options.base.hint_style != CAIRO_HINT_STYLE_NONE &&
  15. +        scaled_font->ft_options.base.antialias == CAIRO_ANTIALIAS_NONE) {
  16. +        if ((scaled_font->ft_options.extra_flags & CAIRO_FT_OPTIONS_EMBOLDEN ||
  17. +             unscaled->have_shape) && unscaled->y_scale < 18) {
  18. +            fake_bitmap_glyph = TRUE;
  19. +            load_flags |= FT_LOAD_IGNORE_TRANSFORM;
  20. +        }
  21. +    }
  22. +
  23.      /*
  24.       * Don't pass FT_LOAD_VERTICAL_LAYOUT to FT_Load_Glyph here as
  25.       * suggested by freetype people.
  26. @@ -1886,6 +1897,17 @@
  27.      glyph = face->glyph;
  28. +    if (fake_bitmap_glyph &&
  29. +        glyph->format == FT_GLYPH_FORMAT_OUTLINE &&
  30. +        glyph->outline.n_points != 0) {
  31. +        error = FT_Render_Glyph (glyph, FT_RENDER_MODE_MONO);
  32. +
  33. +        if (error) {
  34. +            status = CAIRO_STATUS_NO_MEMORY;
  35. +            goto FAIL;
  36. +        }
  37. +    }
  38. +
  39. #if HAVE_FT_GLYPHSLOT_EMBOLDEN
  40.      /*
  41.       * embolden glyphs if requested
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2009-2-13 20:17:09 | 显示全部楼层
simsun的英文粗体怎么了?会不会对别的字体造成影响
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-2-13 22:37:18 | 显示全部楼层
Post by jarryson;1947241
simsun的英文粗体怎么了?会不会对别的字体造成影响

simsun在cairo下,不打补丁粗体破碎?也不懂烦请他人来解释一下。
回复 支持 反对

使用道具 举报

发表于 2009-2-13 23:07:55 | 显示全部楼层
反正不用simsun好多年,要用也是用修改版
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表