|
|
|
@ -2766,7 +2766,33 @@ |
|
|
|
|
clazz = face->driver->clazz; |
|
|
|
|
|
|
|
|
|
if ( clazz->select_size ) |
|
|
|
|
return clazz->select_size( face->size, (FT_ULong)strike_index ); |
|
|
|
|
{ |
|
|
|
|
FT_Error error; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
error = clazz->select_size( face->size, (FT_ULong)strike_index ); |
|
|
|
|
|
|
|
|
|
#ifdef FT_DEBUG_LEVEL_TRACE |
|
|
|
|
{ |
|
|
|
|
FT_Size_Metrics* metrics = &face->size->metrics; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
FT_TRACE5(( "FT_Select_Size (font driver's `select_size'):\n" )); |
|
|
|
|
FT_TRACE5(( " x scale: %d (%f)\n", |
|
|
|
|
metrics->x_scale, metrics->x_scale / 65536.0 )); |
|
|
|
|
FT_TRACE5(( " y scale: %d (%f)\n", |
|
|
|
|
metrics->y_scale, metrics->y_scale / 65536.0 )); |
|
|
|
|
FT_TRACE5(( " ascender: %f\n", metrics->ascender / 64.0 )); |
|
|
|
|
FT_TRACE5(( " descender: %f\n", metrics->descender / 64.0 )); |
|
|
|
|
FT_TRACE5(( " height: %f\n", metrics->height / 64.0 )); |
|
|
|
|
FT_TRACE5(( " max advance: %f\n", metrics->max_advance / 64.0 )); |
|
|
|
|
FT_TRACE5(( " x ppem: %d\n", metrics->x_ppem )); |
|
|
|
|
FT_TRACE5(( " y ppem: %d\n", metrics->y_ppem )); |
|
|
|
|
} |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
return error; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
FT_Select_Metrics( face, (FT_ULong)strike_index ); |
|
|
|
|
|
|
|
|
@ -2794,7 +2820,33 @@ |
|
|
|
|
clazz = face->driver->clazz; |
|
|
|
|
|
|
|
|
|
if ( clazz->request_size ) |
|
|
|
|
return clazz->request_size( face->size, req ); |
|
|
|
|
{ |
|
|
|
|
FT_Error error; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
error = clazz->request_size( face->size, req ); |
|
|
|
|
|
|
|
|
|
#ifdef FT_DEBUG_LEVEL_TRACE |
|
|
|
|
{ |
|
|
|
|
FT_Size_Metrics* metrics = &face->size->metrics; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
FT_TRACE5(( "FT_Request_Size (font driver's `request_size'):\n" )); |
|
|
|
|
FT_TRACE5(( " x scale: %d (%f)\n", |
|
|
|
|
metrics->x_scale, metrics->x_scale / 65536.0 )); |
|
|
|
|
FT_TRACE5(( " y scale: %d (%f)\n", |
|
|
|
|
metrics->y_scale, metrics->y_scale / 65536.0 )); |
|
|
|
|
FT_TRACE5(( " ascender: %f\n", metrics->ascender / 64.0 )); |
|
|
|
|
FT_TRACE5(( " descender: %f\n", metrics->descender / 64.0 )); |
|
|
|
|
FT_TRACE5(( " height: %f\n", metrics->height / 64.0 )); |
|
|
|
|
FT_TRACE5(( " max advance: %f\n", metrics->max_advance / 64.0 )); |
|
|
|
|
FT_TRACE5(( " x ppem: %d\n", metrics->x_ppem )); |
|
|
|
|
FT_TRACE5(( " y ppem: %d\n", metrics->y_ppem )); |
|
|
|
|
} |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
return error; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* The reason that a driver doesn't have `request_size' defined is |
|
|
|
|