| Index: src/base/ftsynth.c
|
| diff --git a/src/base/ftsynth.c b/src/base/ftsynth.c
|
| index d4ec0da570af3867234800aee915836873516c87..241d37f42629ae70f98bfe93a2c19bc3f71ce864 100644
|
| --- a/src/base/ftsynth.c
|
| +++ b/src/base/ftsynth.c
|
| @@ -4,7 +4,7 @@
|
| /* */
|
| /* FreeType synthesizing code for emboldening and slanting (body). */
|
| /* */
|
| -/* Copyright 2000-2001, 2002, 2003, 2004, 2005, 2006, 2010 by */
|
| +/* Copyright 2000-2006, 2010, 2012 by */
|
| /* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
| /* */
|
| /* This file is part of the FreeType project, and may only be used, */
|
| @@ -33,6 +33,7 @@
|
| #undef FT_COMPONENT
|
| #define FT_COMPONENT trace_synth
|
|
|
| +
|
| /*************************************************************************/
|
| /*************************************************************************/
|
| /**** ****/
|
| @@ -62,7 +63,7 @@
|
| transform.xx = 0x10000L;
|
| transform.yx = 0x00000L;
|
|
|
| - transform.xy = 0x06000L;
|
| + transform.xy = 0x0366AL;
|
| transform.yy = 0x10000L;
|
|
|
| FT_Outline_Transform( outline, &transform );
|
| @@ -72,7 +73,7 @@
|
| /*************************************************************************/
|
| /*************************************************************************/
|
| /**** ****/
|
| - /**** EXPERIMENTAL EMBOLDENING/OUTLINING SUPPORT ****/
|
| + /**** EXPERIMENTAL EMBOLDENING SUPPORT ****/
|
| /**** ****/
|
| /*************************************************************************/
|
| /*************************************************************************/
|
| @@ -101,12 +102,7 @@
|
| if ( slot->format == FT_GLYPH_FORMAT_OUTLINE )
|
| {
|
| /* ignore error */
|
| - (void)FT_Outline_Embolden( &slot->outline, xstr );
|
| -
|
| - /* this is more than enough for most glyphs; if you need accurate */
|
| - /* values, you have to call FT_Outline_Get_CBox */
|
| - xstr = xstr * 2;
|
| - ystr = xstr;
|
| + (void)FT_Outline_EmboldenXY( &slot->outline, xstr, ystr );
|
| }
|
| else /* slot->format == FT_GLYPH_FORMAT_BITMAP */
|
| {
|
| @@ -143,13 +139,10 @@
|
| if ( slot->advance.y )
|
| slot->advance.y += ystr;
|
|
|
| - slot->metrics.width += xstr;
|
| - slot->metrics.height += ystr;
|
| - slot->metrics.horiBearingY += ystr;
|
| - slot->metrics.horiAdvance += xstr;
|
| - slot->metrics.vertBearingX -= xstr / 2;
|
| - slot->metrics.vertBearingY += ystr;
|
| - slot->metrics.vertAdvance += ystr;
|
| + slot->metrics.width += xstr;
|
| + slot->metrics.height += ystr;
|
| + slot->metrics.horiAdvance += xstr;
|
| + slot->metrics.vertAdvance += ystr;
|
|
|
| /* XXX: 16-bit overflow case must be excluded before here */
|
| if ( slot->format == FT_GLYPH_FORMAT_BITMAP )
|
|
|