1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-06-03 12:58:14 +00:00

LibGfx: Added dirty and raw cyrillic support for bitmap fonts.

This is a very quick and diry hack to implement support for cyrillic bitmap fonts.
This commit is contained in:
Dmitrii Trifonov 2021-04-08 14:39:26 +03:00 committed by Andreas Kling
parent 2469e07784
commit 323b7021bc
2 changed files with 9 additions and 1 deletions

View file

@ -145,6 +145,8 @@ RefPtr<BitmapFont> BitmapFont::load_from_memory(const u8* data)
type = FontTypes::Default; type = FontTypes::Default;
else if (header.type == 1) else if (header.type == 1)
type = FontTypes::LatinExtendedA; type = FontTypes::LatinExtendedA;
else if (header.type == 2)
type = FontTypes::Cyrillic;
else else
VERIFY_NOT_REACHED(); VERIFY_NOT_REACHED();
@ -166,6 +168,9 @@ size_t BitmapFont::glyph_count_by_type(FontTypes type)
if (type == FontTypes::LatinExtendedA) if (type == FontTypes::LatinExtendedA)
return 384; return 384;
if (type == FontTypes::Cyrillic)
return 1280;
dbgln("Unknown font type: {}", (int)type); dbgln("Unknown font type: {}", (int)type);
VERIFY_NOT_REACHED(); VERIFY_NOT_REACHED();
} }

View file

@ -38,7 +38,10 @@ namespace Gfx {
enum FontTypes { enum FontTypes {
Default = 0, Default = 0,
LatinExtendedA = 1 LatinExtendedA = 1,
// There are many blocks between LatinExtendedA and Cyrrilic that has to be added later.
// Cyrrilic has to be switched to another number
Cyrillic = 2
}; };
class BitmapFont : public Font { class BitmapFont : public Font {