diff options
Diffstat (limited to 'Build/source/libs/freetype2/freetype-src/src/sfnt/ttsbit.c')
-rw-r--r-- | Build/source/libs/freetype2/freetype-src/src/sfnt/ttsbit.c | 37 |
1 files changed, 13 insertions, 24 deletions
diff --git a/Build/source/libs/freetype2/freetype-src/src/sfnt/ttsbit.c b/Build/source/libs/freetype2/freetype-src/src/sfnt/ttsbit.c index bf73d04e540..e9ba697dba0 100644 --- a/Build/source/libs/freetype2/freetype-src/src/sfnt/ttsbit.c +++ b/Build/source/libs/freetype2/freetype-src/src/sfnt/ttsbit.c @@ -4,7 +4,7 @@ * * TrueType and OpenType embedded bitmap support (body). * - * Copyright (C) 2005-2022 by + * Copyright (C) 2005-2021 by * David Turner, Robert Wilhelm, and Werner Lemberg. * * Copyright 2013 by Google, Inc. @@ -172,8 +172,17 @@ goto Exit; } +#ifdef FT_DEBUG_LEVEL_TRACE + /* we currently don't support bit 1; however, it is better to */ + /* draw at least something... */ if ( flags == 3 ) - face->root.face_flags |= FT_FACE_FLAG_SBIX_OVERLAY; + { + FT_TRACE1(( "tt_face_load_sbit_strikes:" + " sbix overlay not supported yet\n" )); + FT_TRACE1(( " " + " expect bad rendering results\n" )); + } +#endif /* * Count the number of strikes available in the table. We are a bit @@ -721,9 +730,6 @@ pitch = bitmap->pitch; line = bitmap->buffer; - if ( !line ) - goto Exit; - width = decoder->metrics->width; height = decoder->metrics->height; @@ -1571,34 +1577,17 @@ if ( !error ) { - FT_Short abearing; /* not used here */ + FT_Short abearing; FT_UShort aadvance; tt_face_get_metrics( face, FALSE, glyph_index, &abearing, &aadvance ); metrics->horiBearingX = (FT_Short)originOffsetX; - metrics->vertBearingX = (FT_Short)originOffsetX; - - metrics->horiBearingY = (FT_Short)( originOffsetY + metrics->height ); - metrics->vertBearingY = (FT_Short)originOffsetY; - + metrics->horiBearingY = (FT_Short)( -originOffsetY + metrics->height ); metrics->horiAdvance = (FT_UShort)( aadvance * face->root.size->metrics.x_ppem / face->header.Units_Per_EM ); - - if ( face->vertical_info ) - tt_face_get_metrics( face, TRUE, glyph_index, &abearing, &aadvance ); - else if ( face->os2.version != 0xFFFFU ) - aadvance = (FT_UShort)FT_ABS( face->os2.sTypoAscender - - face->os2.sTypoDescender ); - else - aadvance = (FT_UShort)FT_ABS( face->horizontal.Ascender - - face->horizontal.Descender ); - - metrics->vertAdvance = (FT_UShort)( aadvance * - face->root.size->metrics.x_ppem / - face->header.Units_Per_EM ); } return error; |