remove widest_number definition and usage, add Font::getMaxDigitWidth() method instead

Signed-off-by: M. Liebmann <tuxcode.bbg@gmail.com>
This commit is contained in:
martii
2013-11-29 21:06:36 +01:00
committed by M. Liebmann
parent c88ad39c67
commit 15b2b2ec05
10 changed files with 47 additions and 25 deletions

View File

@@ -230,6 +230,8 @@ Font::Font(FBFontRenderClass *render, FTC_FaceID faceid, const int isize, const
//font.image_type |= ftc_image_flag_autohinted;
font.flags = FT_LOAD_RENDER | FT_LOAD_FORCE_AUTOHINT;
maxdigitwidth = 0;
scaler.face_id = font.face_id;
scaler.width = isize * 64;
scaler.height = isize * 64;
@@ -318,6 +320,21 @@ int Font::getDigitOffset(void)
return DigitOffset;
}
int Font::getMaxDigitWidth(void)
{
if (maxdigitwidth < 1) {
char b[2];
b[1] = 0;
for (char c = '0'; c <= '9'; c++) {
*b = c;
int w = getRenderWidth(b, true);
if (w > maxdigitwidth)
maxdigitwidth = w;
}
}
return maxdigitwidth;
}
int UTF8ToUnicode(const char * &text, const bool utf8_encoded) // returns -1 on error
{
int unicode_value;