diff options
author | Eugene Sandulenko | 2016-10-06 07:44:18 +0200 |
---|---|---|
committer | Eugene Sandulenko | 2016-10-06 07:44:18 +0200 |
commit | 9730e42fac5b7d0fd70939cddb6888a508f8056e (patch) | |
tree | 66e886e5549436666b88e7f2d8d2dde228a7444b /graphics/fonts/bdf.cpp | |
parent | 0d4d5459f27abaac7d41288583acc80b2a5ad9fb (diff) | |
download | scummvm-rg350-9730e42fac5b7d0fd70939cddb6888a508f8056e.tar.gz scummvm-rg350-9730e42fac5b7d0fd70939cddb6888a508f8056e.tar.bz2 scummvm-rg350-9730e42fac5b7d0fd70939cddb6888a508f8056e.zip |
GRAPHICS: Parse font size from BDF fonts
Diffstat (limited to 'graphics/fonts/bdf.cpp')
-rw-r--r-- | graphics/fonts/bdf.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/graphics/fonts/bdf.cpp b/graphics/fonts/bdf.cpp index c0a7b05d8b..79d31e5b9a 100644 --- a/graphics/fonts/bdf.cpp +++ b/graphics/fonts/bdf.cpp @@ -53,6 +53,10 @@ int BdfFont::getFontHeight() const { return _data.height; } +int BdfFont::getFontSize() const { + return _data.size; +} + int BdfFont::getMaxCharWidth() const { return _data.maxAdvance; } @@ -324,6 +328,17 @@ BdfFont *BdfFont::loadFont(Common::SeekableReadStream &stream) { font.defaultBox.height = height; font.defaultBox.xOffset = xOffset; font.defaultBox.yOffset = yOffset; + } else if (line.hasPrefix("SIZE ")) { + int hDpi, vDpi; + if (sscanf(line.c_str(), "SIZE %d %d %d", &font.size, &hDpi, &vDpi) != 3) { + warning("BdfFont::loadFont: Invalid SIZE"); + freeBitmaps(bitmaps, font.numCharacters); + delete[] bitmaps; + delete[] advances; + delete[] boxes; + delete[] familyName; + return 0; + } } else if (line.hasPrefix("FONT_ASCENT ")) { if (sscanf(line.c_str(), "FONT_ASCENT %d", &font.ascent) != 1) { warning("BdfFont::loadFont: Invalid FONT_ASCENT"); |