From 7ddb80606367aba8aa637213c0604712e4240683 Mon Sep 17 00:00:00 2001 From: Michael Steenbeek <1478678+Gymnasiast@users.noreply.github.com> Date: Fri, 9 May 2025 14:01:28 +0200 Subject: [PATCH] Close #24324: Split font.dat from g2.dat --- .github/workflows/ci.yml | 18 +- .gitignore | 1 + CMakeLists.txt | 37 +- openrct2.targets | 25 +- .../font => fonts}/cyrillic/U1028-bold.png | Bin .../font => fonts}/cyrillic/U1028-small.png | Bin .../font => fonts}/cyrillic/U1028-tiny.png | Bin .../font => fonts}/cyrillic/U1041-bold.png | Bin .../font => fonts}/cyrillic/U1041-small.png | Bin .../font => fonts}/cyrillic/U1041-tiny.png | Bin .../font => fonts}/cyrillic/U1043-bold.png | Bin .../font => fonts}/cyrillic/U1043-small.png | Bin .../font => fonts}/cyrillic/U1043-tiny.png | Bin .../font => fonts}/cyrillic/U1044-bold.png | Bin .../font => fonts}/cyrillic/U1044-small.png | Bin .../font => fonts}/cyrillic/U1044-tiny.png | Bin .../font => fonts}/cyrillic/U1046-bold.png | Bin .../font => fonts}/cyrillic/U1046-small.png | Bin .../font => fonts}/cyrillic/U1046-tiny.png | Bin .../font => fonts}/cyrillic/U1047-bold.png | Bin .../font => fonts}/cyrillic/U1047-small.png | Bin .../font => fonts}/cyrillic/U1047-tiny.png | Bin .../font => fonts}/cyrillic/U1048-bold.png | Bin .../font => fonts}/cyrillic/U1048-small.png | Bin .../font => fonts}/cyrillic/U1048-tiny.png | Bin .../font => fonts}/cyrillic/U1049-bold.png | Bin .../font => fonts}/cyrillic/U1049-small.png | Bin .../font => fonts}/cyrillic/U1049-tiny.png | Bin .../font => fonts}/cyrillic/U1051-bold.png | Bin .../font => fonts}/cyrillic/U1051-small.png | Bin .../font => fonts}/cyrillic/U1051-tiny.png | Bin .../font => fonts}/cyrillic/U1055-bold.png | Bin .../font => fonts}/cyrillic/U1055-small.png | Bin .../font => fonts}/cyrillic/U1055-tiny.png | Bin .../font => fonts}/cyrillic/U1059-bold.png | Bin .../font => fonts}/cyrillic/U1059-small.png | Bin .../font => fonts}/cyrillic/U1059-tiny.png | Bin .../font => fonts}/cyrillic/U1060-bold.png | Bin .../font => fonts}/cyrillic/U1060-small.png | Bin .../font => fonts}/cyrillic/U1060-tiny.png | Bin .../font => fonts}/cyrillic/U1062-bold.png | Bin .../font => fonts}/cyrillic/U1062-small.png | Bin .../font => fonts}/cyrillic/U1062-tiny.png | Bin .../font => fonts}/cyrillic/U1063-bold.png | Bin .../font => fonts}/cyrillic/U1063-small.png | Bin .../font => fonts}/cyrillic/U1063-tiny.png | Bin .../font => fonts}/cyrillic/U1064-bold.png | Bin .../font => fonts}/cyrillic/U1064-small.png | Bin .../font => fonts}/cyrillic/U1064-tiny.png | Bin .../font => fonts}/cyrillic/U1065-bold.png | Bin .../font => fonts}/cyrillic/U1065-small.png | Bin .../font => fonts}/cyrillic/U1065-tiny.png | Bin .../font => fonts}/cyrillic/U1066-bold.png | Bin .../font => fonts}/cyrillic/U1066-small.png | Bin .../font => fonts}/cyrillic/U1066-tiny.png | Bin .../font => fonts}/cyrillic/U1067-bold.png | Bin .../font => fonts}/cyrillic/U1067-small.png | Bin .../font => fonts}/cyrillic/U1067-tiny.png | Bin .../font => fonts}/cyrillic/U1068-bold.png | Bin .../font => fonts}/cyrillic/U1068-small.png | Bin .../font => fonts}/cyrillic/U1068-tiny.png | Bin .../font => fonts}/cyrillic/U1069-bold.png | Bin .../font => fonts}/cyrillic/U1069-small.png | Bin .../font => fonts}/cyrillic/U1069-tiny.png | Bin .../font => fonts}/cyrillic/U1070-bold.png | Bin .../font => fonts}/cyrillic/U1070-small.png | Bin .../font => fonts}/cyrillic/U1070-tiny.png | Bin .../font => fonts}/cyrillic/U1071-bold.png | Bin .../font => fonts}/cyrillic/U1071-small.png | Bin .../font => fonts}/cyrillic/U1071-tiny.png | Bin .../font => fonts}/cyrillic/U1073-bold.png | Bin .../font => fonts}/cyrillic/U1073-small.png | Bin .../font => fonts}/cyrillic/U1073-tiny.png | Bin .../font => fonts}/cyrillic/U1074-bold.png | Bin .../font => fonts}/cyrillic/U1074-small.png | Bin .../font => fonts}/cyrillic/U1074-tiny.png | Bin .../font => fonts}/cyrillic/U1075-bold.png | Bin .../font => fonts}/cyrillic/U1075-small.png | Bin .../font => fonts}/cyrillic/U1075-tiny.png | Bin .../font => fonts}/cyrillic/U1076-bold.png | Bin .../font => fonts}/cyrillic/U1076-small.png | Bin .../font => fonts}/cyrillic/U1076-tiny.png | Bin .../font => fonts}/cyrillic/U1078-bold.png | Bin .../font => fonts}/cyrillic/U1078-small.png | Bin .../font => fonts}/cyrillic/U1078-tiny.png | Bin .../font => fonts}/cyrillic/U1079-bold.png | Bin .../font => fonts}/cyrillic/U1079-small.png | Bin .../font => fonts}/cyrillic/U1079-tiny.png | Bin .../font => fonts}/cyrillic/U1080-bold.png | Bin .../font => fonts}/cyrillic/U1080-small.png | Bin .../font => fonts}/cyrillic/U1080-tiny.png | Bin .../font => fonts}/cyrillic/U1081-bold.png | Bin .../font => fonts}/cyrillic/U1081-small.png | Bin .../font => fonts}/cyrillic/U1081-tiny.png | Bin .../font => fonts}/cyrillic/U1082-bold.png | Bin .../font => fonts}/cyrillic/U1082-small.png | Bin .../font => fonts}/cyrillic/U1082-tiny.png | Bin .../font => fonts}/cyrillic/U1083-bold.png | Bin .../font => fonts}/cyrillic/U1083-small.png | Bin .../font => fonts}/cyrillic/U1083-tiny.png | Bin .../font => fonts}/cyrillic/U1084-bold.png | Bin .../font => fonts}/cyrillic/U1084-small.png | Bin .../font => fonts}/cyrillic/U1084-tiny.png | Bin .../font => fonts}/cyrillic/U1085-bold.png | Bin .../font => fonts}/cyrillic/U1085-small.png | Bin .../font => fonts}/cyrillic/U1085-tiny.png | Bin .../font => fonts}/cyrillic/U1087-bold.png | Bin .../font => fonts}/cyrillic/U1087-small.png | Bin .../font => fonts}/cyrillic/U1087-tiny.png | Bin .../font => fonts}/cyrillic/U1090-bold.png | Bin .../font => fonts}/cyrillic/U1090-small.png | Bin .../font => fonts}/cyrillic/U1090-tiny.png | Bin .../font => fonts}/cyrillic/U1092-bold.png | Bin .../font => fonts}/cyrillic/U1092-small.png | Bin .../font => fonts}/cyrillic/U1092-tiny.png | Bin .../font => fonts}/cyrillic/U1094-bold.png | Bin .../font => fonts}/cyrillic/U1094-small.png | Bin .../font => fonts}/cyrillic/U1094-tiny.png | Bin .../font => fonts}/cyrillic/U1095-bold.png | Bin .../font => fonts}/cyrillic/U1095-small.png | Bin .../font => fonts}/cyrillic/U1095-tiny.png | Bin .../font => fonts}/cyrillic/U1096-bold.png | Bin .../font => fonts}/cyrillic/U1096-small.png | Bin .../font => fonts}/cyrillic/U1096-tiny.png | Bin .../font => fonts}/cyrillic/U1097-bold.png | Bin .../font => fonts}/cyrillic/U1097-small.png | Bin .../font => fonts}/cyrillic/U1097-tiny.png | Bin .../font => fonts}/cyrillic/U1099-bold.png | Bin .../font => fonts}/cyrillic/U1099-small.png | Bin .../font => fonts}/cyrillic/U1099-tiny.png | Bin .../font => fonts}/cyrillic/U1100-bold.png | Bin .../font => fonts}/cyrillic/U1100-small.png | Bin .../font => fonts}/cyrillic/U1100-tiny.png | Bin .../font => fonts}/cyrillic/U1101-bold.png | Bin .../font => fonts}/cyrillic/U1101-small.png | Bin .../font => fonts}/cyrillic/U1101-tiny.png | Bin .../font => fonts}/cyrillic/U1102-bold.png | Bin .../font => fonts}/cyrillic/U1102-small.png | Bin .../font => fonts}/cyrillic/U1102-tiny.png | Bin .../font => fonts}/cyrillic/U1103-bold.png | Bin .../font => fonts}/cyrillic/U1103-small.png | Bin .../font => fonts}/cyrillic/U1103-tiny.png | Bin .../font => fonts}/cyrillic/U1108-bold.png | Bin .../font => fonts}/cyrillic/U1108-small.png | Bin .../font => fonts}/cyrillic/U1108-tiny.png | Bin .../font => fonts}/cyrillic/U1168-bold.png | Bin .../font => fonts}/cyrillic/U1168-small.png | Bin .../font => fonts}/cyrillic/U1168-tiny.png | Bin .../font => fonts}/cyrillic/U1169-bold.png | Bin .../font => fonts}/cyrillic/U1169-small.png | Bin .../font => fonts}/cyrillic/U1169-tiny.png | Bin .../{g2/font => fonts}/ellipsis-bold.png | Bin .../{g2/font => fonts}/ellipsis-small.png | Bin .../{g2/font => fonts}/ellipsis-tiny.png | Bin resources/{g2/font => fonts}/eye-tiny.png | Bin resources/{g2/font => fonts}/eye.png | Bin .../font => fonts}/german-openquotes-bold.png | Bin .../german-openquotes-small.png | Bin .../font => fonts}/german-openquotes-tiny.png | Bin resources/{g2/font => fonts}/guilder-bold.png | Bin .../{g2/font => fonts}/guilder-small.png | Bin resources/{g2/font => fonts}/guilder-tiny.png | Bin .../font => fonts}/latin/a-breve-uc-bold.png | Bin .../font => fonts}/latin/a-breve-uc-small.png | Bin .../font => fonts}/latin/a-breve-uc-tiny.png | Bin .../{g2/font => fonts}/latin/ae-bold.png | Bin .../{g2/font => fonts}/latin/ae-small.png | Bin .../{g2/font => fonts}/latin/ae-tiny.png | Bin .../{g2/font => fonts}/latin/ae-uc-bold.png | Bin .../{g2/font => fonts}/latin/ae-uc-small.png | Bin .../{g2/font => fonts}/latin/ae-uc-tiny.png | Bin .../{g2/font => fonts}/latin/c-caron-bold.png | Bin .../font => fonts}/latin/c-caron-small.png | Bin .../{g2/font => fonts}/latin/c-caron-tiny.png | Bin .../font => fonts}/latin/c-caron-uc-bold.png | Bin .../font => fonts}/latin/c-caron-uc-small.png | Bin .../font => fonts}/latin/c-caron-uc-tiny.png | Bin .../latin/c-circumflex-bold.png | Bin .../latin/c-circumflex-small.png | Bin .../latin/c-circumflex-tiny.png | Bin .../latin/c-circumflex-uc-bold.png | Bin .../latin/c-circumflex-uc-small.png | Bin .../latin/c-circumflex-uc-tiny.png | Bin .../{g2/font => fonts}/latin/d-caron-bold.png | Bin .../font => fonts}/latin/d-caron-small.png | Bin .../{g2/font => fonts}/latin/d-caron-tiny.png | Bin .../font => fonts}/latin/d-caron-uc-bold.png | Bin .../font => fonts}/latin/d-caron-uc-small.png | Bin .../font => fonts}/latin/d-caron-uc-tiny.png | Bin .../{g2/font => fonts}/latin/e-caron-bold.png | Bin .../font => fonts}/latin/e-caron-small.png | Bin .../{g2/font => fonts}/latin/e-caron-tiny.png | Bin .../font => fonts}/latin/e-caron-uc-bold.png | Bin .../font => fonts}/latin/e-caron-uc-small.png | Bin .../font => fonts}/latin/e-caron-uc-tiny.png | Bin .../{g2/font => fonts}/latin/g-breve-bold.png | Bin .../font => fonts}/latin/g-breve-small.png | Bin .../{g2/font => fonts}/latin/g-breve-tiny.png | Bin .../font => fonts}/latin/g-breve-uc-bold.png | Bin .../font => fonts}/latin/g-breve-uc-small.png | Bin .../font => fonts}/latin/g-breve-uc-tiny.png | Bin .../latin/g-circumflex-bold.png | Bin .../latin/g-circumflex-small.png | Bin .../latin/g-circumflex-tiny.png | Bin .../latin/g-circumflex-uc-bold.png | Bin .../latin/g-circumflex-uc-small.png | Bin .../latin/g-circumflex-uc-tiny.png | Bin .../latin/h-circumflex-bold.png | Bin .../latin/h-circumflex-small.png | Bin .../latin/h-circumflex-tiny.png | Bin .../latin/h-circumflex-uc-bold.png | Bin .../latin/h-circumflex-uc-small.png | Bin .../latin/h-circumflex-uc-tiny.png | Bin .../latin/i-with-dot-uc-bold.png | Bin .../latin/i-with-dot-uc-small.png | Bin .../latin/i-with-dot-uc-tiny.png | Bin .../latin/i-without-dot-bold.png | Bin .../latin/i-without-dot-small.png | Bin .../latin/i-without-dot-tiny.png | Bin .../font => fonts}/latin/interpunct-bold.png | Bin .../font => fonts}/latin/interpunct-small.png | Bin .../font => fonts}/latin/interpunct-tiny.png | Bin resources/{g2/font => fonts}/latin/j-bold.png | Bin .../latin/j-circumflex-bold.png | Bin .../latin/j-circumflex-small.png | Bin .../latin/j-circumflex-tiny.png | Bin .../latin/j-circumflex-uc-bold.png | Bin .../latin/j-circumflex-uc-small.png | Bin .../latin/j-circumflex-uc-tiny.png | Bin .../{g2/font => fonts}/latin/j-small.png | Bin resources/{g2/font => fonts}/latin/j-tiny.png | Bin resources/{g2/font => fonts}/latin/l-bold.png | Bin .../{g2/font => fonts}/latin/l-small.png | Bin resources/{g2/font => fonts}/latin/l-tiny.png | Bin .../{g2/font => fonts}/latin/n-caron-bold.png | Bin .../font => fonts}/latin/n-caron-small.png | Bin .../{g2/font => fonts}/latin/n-caron-tiny.png | Bin .../font => fonts}/latin/n-caron-uc-bold.png | Bin .../font => fonts}/latin/n-caron-uc-small.png | Bin .../font => fonts}/latin/n-caron-uc-tiny.png | Bin .../latin/o-double-acute-bold.png | Bin .../latin/o-double-acute-small.png | Bin .../latin/o-double-acute-tiny.png | Bin .../latin/o-double-acute-uc-bold.png | Bin .../latin/o-double-acute-uc-small.png | Bin .../latin/o-double-acute-uc-tiny.png | Bin .../font => fonts}/latin/o-stroke-bold.png | Bin .../font => fonts}/latin/o-stroke-small.png | Bin .../font => fonts}/latin/o-stroke-tiny.png | Bin .../font => fonts}/latin/o-stroke-uc-bold.png | Bin .../latin/o-stroke-uc-small.png | Bin .../font => fonts}/latin/o-stroke-uc-tiny.png | Bin .../{g2/font => fonts}/latin/oe-bold.png | Bin .../{g2/font => fonts}/latin/oe-small.png | Bin .../{g2/font => fonts}/latin/oe-tiny.png | Bin .../{g2/font => fonts}/latin/oe-uc-bold.png | Bin .../{g2/font => fonts}/latin/oe-uc-small.png | Bin .../{g2/font => fonts}/latin/oe-uc-tiny.png | Bin .../{g2/font => fonts}/latin/r-caron-bold.png | Bin .../font => fonts}/latin/r-caron-small.png | Bin .../{g2/font => fonts}/latin/r-caron-tiny.png | Bin .../font => fonts}/latin/r-caron-uc-bold.png | Bin .../font => fonts}/latin/r-caron-uc-small.png | Bin .../font => fonts}/latin/r-caron-uc-tiny.png | Bin .../{g2/font => fonts}/latin/s-caron-bold.png | Bin .../font => fonts}/latin/s-caron-small.png | Bin .../{g2/font => fonts}/latin/s-caron-tiny.png | Bin .../font => fonts}/latin/s-caron-uc-bold.png | Bin .../font => fonts}/latin/s-caron-uc-small.png | Bin .../font => fonts}/latin/s-caron-uc-tiny.png | Bin .../font => fonts}/latin/s-cedilla-bold.png | Bin .../font => fonts}/latin/s-cedilla-small.png | Bin .../font => fonts}/latin/s-cedilla-tiny.png | Bin .../latin/s-cedilla-uc-bold.png | Bin .../latin/s-cedilla-uc-small.png | Bin .../latin/s-cedilla-uc-tiny.png | Bin .../latin/s-circumflex-bold.png | Bin .../latin/s-circumflex-small.png | Bin .../latin/s-circumflex-tiny.png | Bin .../latin/s-circumflex-uc-bold.png | Bin .../latin/s-circumflex-uc-small.png | Bin .../latin/s-circumflex-uc-tiny.png | Bin .../{g2/font => fonts}/latin/t-caron-bold.png | Bin .../font => fonts}/latin/t-caron-small.png | Bin .../{g2/font => fonts}/latin/t-caron-tiny.png | Bin .../font => fonts}/latin/t-caron-uc-bold.png | Bin .../font => fonts}/latin/t-caron-uc-small.png | Bin .../font => fonts}/latin/t-caron-uc-tiny.png | Bin .../{g2/font => fonts}/latin/t-comma-bold.png | Bin .../font => fonts}/latin/t-comma-small.png | Bin .../{g2/font => fonts}/latin/t-comma-tiny.png | Bin .../font => fonts}/latin/t-comma-uc-bold.png | Bin .../font => fonts}/latin/t-comma-uc-small.png | Bin .../font => fonts}/latin/t-comma-uc-tiny.png | Bin .../{g2/font => fonts}/latin/u-breve-bold.png | Bin .../font => fonts}/latin/u-breve-small.png | Bin .../{g2/font => fonts}/latin/u-breve-tiny.png | Bin .../font => fonts}/latin/u-breve-uc-bold.png | Bin .../font => fonts}/latin/u-breve-uc-small.png | Bin .../font => fonts}/latin/u-breve-uc-tiny.png | Bin .../latin/u-double-acute-bold.png | Bin .../latin/u-double-acute-small.png | Bin .../latin/u-double-acute-tiny.png | Bin .../latin/u-double-acute-uc-bold.png | Bin .../latin/u-double-acute-uc-small.png | Bin .../latin/u-double-acute-uc-tiny.png | Bin .../{g2/font => fonts}/latin/u-ring-bold.png | Bin .../{g2/font => fonts}/latin/u-ring-small.png | Bin .../{g2/font => fonts}/latin/u-ring-tiny.png | Bin .../font => fonts}/latin/u-ring-uc-bold.png | Bin .../font => fonts}/latin/u-ring-uc-small.png | Bin .../font => fonts}/latin/u-ring-uc-tiny.png | Bin .../latin/w-circumflex-bold.png | Bin .../latin/w-circumflex-small.png | Bin .../latin/w-circumflex-tiny.png | Bin .../latin/w-circumflex-uc-bold.png | Bin .../latin/w-circumflex-uc-small.png | Bin .../latin/w-circumflex-uc-tiny.png | Bin .../{g2/font => fonts}/latin/y-acute-bold.png | Bin .../font => fonts}/latin/y-acute-small.png | Bin .../{g2/font => fonts}/latin/y-acute-tiny.png | Bin .../font => fonts}/latin/y-acute-uc-bold.png | Bin .../font => fonts}/latin/y-acute-uc-small.png | Bin .../font => fonts}/latin/y-acute-uc-tiny.png | Bin .../latin/y-circumflex-bold.png | Bin .../latin/y-circumflex-small.png | Bin .../latin/y-circumflex-tiny.png | Bin .../latin/y-circumflex-uc-bold.png | Bin .../latin/y-circumflex-uc-small.png | Bin .../latin/y-circumflex-uc-tiny.png | Bin .../{g2/font => fonts}/latin/z-caron-bold.png | Bin .../font => fonts}/latin/z-caron-small.png | Bin .../{g2/font => fonts}/latin/z-caron-tiny.png | Bin .../font => fonts}/latin/z-caron-uc-bold.png | Bin .../font => fonts}/latin/z-caron-uc-small.png | Bin .../font => fonts}/latin/z-caron-uc-tiny.png | Bin .../{g2/font => fonts}/left-brace-bold.png | Bin .../{g2/font => fonts}/left-brace-small.png | Bin .../{g2/font => fonts}/left-brace-tiny.png | Bin .../{g2/font => fonts}/right-brace-bold.png | Bin .../{g2/font => fonts}/right-brace-small.png | Bin .../{g2/font => fonts}/right-brace-tiny.png | Bin resources/{g2/font => fonts}/rouble-bold.png | Bin resources/{g2/font => fonts}/rouble-small.png | Bin resources/{g2/font => fonts}/rouble-tiny.png | Bin resources/fonts/sprites.json | 1962 +++++++++++++++++ resources/{g2/font => fonts}/tilde-bold.png | Bin resources/{g2/font => fonts}/tilde-small.png | Bin resources/{g2/font => fonts}/tilde-tiny.png | Bin .../{g2/font => fonts}/vertical-bar-bold.png | Bin .../{g2/font => fonts}/vertical-bar-small.png | Bin .../{g2/font => fonts}/vertical-bar-tiny.png | Bin resources/g2/sprites.json | 1960 ---------------- src/openrct2-ui/CMakeLists.txt | 4 + src/openrct2-ui/scripting/ScImageManager.hpp | 4 + src/openrct2/Context.cpp | 4 +- src/openrct2/SpriteIds.h | 297 +-- src/openrct2/drawing/Drawing.Sprite.cpp | 67 +- src/openrct2/drawing/Drawing.h | 4 +- src/openrct2/drawing/Font.cpp | 252 +-- src/openrct2/drawing/ScrollingText.cpp | 6 +- 361 files changed, 2364 insertions(+), 2277 deletions(-) rename resources/{g2/font => fonts}/cyrillic/U1028-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1028-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1028-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1041-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1041-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1041-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1043-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1043-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1043-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1044-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1044-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1044-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1046-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1046-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1046-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1047-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1047-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1047-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1048-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1048-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1048-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1049-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1049-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1049-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1051-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1051-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1051-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1055-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1055-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1055-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1059-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1059-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1059-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1060-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1060-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1060-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1062-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1062-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1062-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1063-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1063-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1063-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1064-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1064-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1064-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1065-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1065-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1065-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1066-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1066-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1066-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1067-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1067-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1067-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1068-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1068-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1068-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1069-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1069-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1069-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1070-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1070-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1070-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1071-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1071-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1071-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1073-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1073-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1073-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1074-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1074-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1074-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1075-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1075-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1075-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1076-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1076-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1076-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1078-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1078-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1078-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1079-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1079-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1079-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1080-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1080-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1080-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1081-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1081-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1081-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1082-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1082-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1082-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1083-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1083-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1083-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1084-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1084-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1084-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1085-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1085-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1085-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1087-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1087-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1087-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1090-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1090-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1090-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1092-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1092-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1092-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1094-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1094-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1094-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1095-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1095-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1095-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1096-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1096-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1096-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1097-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1097-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1097-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1099-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1099-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1099-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1100-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1100-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1100-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1101-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1101-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1101-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1102-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1102-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1102-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1103-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1103-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1103-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1108-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1108-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1108-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1168-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1168-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1168-tiny.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1169-bold.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1169-small.png (100%) rename resources/{g2/font => fonts}/cyrillic/U1169-tiny.png (100%) rename resources/{g2/font => fonts}/ellipsis-bold.png (100%) rename resources/{g2/font => fonts}/ellipsis-small.png (100%) rename resources/{g2/font => fonts}/ellipsis-tiny.png (100%) rename resources/{g2/font => fonts}/eye-tiny.png (100%) rename resources/{g2/font => fonts}/eye.png (100%) rename resources/{g2/font => fonts}/german-openquotes-bold.png (100%) rename resources/{g2/font => fonts}/german-openquotes-small.png (100%) rename resources/{g2/font => fonts}/german-openquotes-tiny.png (100%) rename resources/{g2/font => fonts}/guilder-bold.png (100%) rename resources/{g2/font => fonts}/guilder-small.png (100%) rename resources/{g2/font => fonts}/guilder-tiny.png (100%) rename resources/{g2/font => fonts}/latin/a-breve-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/a-breve-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/a-breve-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/ae-bold.png (100%) rename resources/{g2/font => fonts}/latin/ae-small.png (100%) rename resources/{g2/font => fonts}/latin/ae-tiny.png (100%) rename resources/{g2/font => fonts}/latin/ae-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/ae-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/ae-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/c-caron-bold.png (100%) rename resources/{g2/font => fonts}/latin/c-caron-small.png (100%) rename resources/{g2/font => fonts}/latin/c-caron-tiny.png (100%) rename resources/{g2/font => fonts}/latin/c-caron-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/c-caron-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/c-caron-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/c-circumflex-bold.png (100%) rename resources/{g2/font => fonts}/latin/c-circumflex-small.png (100%) rename resources/{g2/font => fonts}/latin/c-circumflex-tiny.png (100%) rename resources/{g2/font => fonts}/latin/c-circumflex-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/c-circumflex-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/c-circumflex-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/d-caron-bold.png (100%) rename resources/{g2/font => fonts}/latin/d-caron-small.png (100%) rename resources/{g2/font => fonts}/latin/d-caron-tiny.png (100%) rename resources/{g2/font => fonts}/latin/d-caron-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/d-caron-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/d-caron-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/e-caron-bold.png (100%) rename resources/{g2/font => fonts}/latin/e-caron-small.png (100%) rename resources/{g2/font => fonts}/latin/e-caron-tiny.png (100%) rename resources/{g2/font => fonts}/latin/e-caron-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/e-caron-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/e-caron-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/g-breve-bold.png (100%) rename resources/{g2/font => fonts}/latin/g-breve-small.png (100%) rename resources/{g2/font => fonts}/latin/g-breve-tiny.png (100%) rename resources/{g2/font => fonts}/latin/g-breve-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/g-breve-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/g-breve-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/g-circumflex-bold.png (100%) rename resources/{g2/font => fonts}/latin/g-circumflex-small.png (100%) rename resources/{g2/font => fonts}/latin/g-circumflex-tiny.png (100%) rename resources/{g2/font => fonts}/latin/g-circumflex-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/g-circumflex-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/g-circumflex-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/h-circumflex-bold.png (100%) rename resources/{g2/font => fonts}/latin/h-circumflex-small.png (100%) rename resources/{g2/font => fonts}/latin/h-circumflex-tiny.png (100%) rename resources/{g2/font => fonts}/latin/h-circumflex-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/h-circumflex-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/h-circumflex-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/i-with-dot-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/i-with-dot-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/i-with-dot-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/i-without-dot-bold.png (100%) rename resources/{g2/font => fonts}/latin/i-without-dot-small.png (100%) rename resources/{g2/font => fonts}/latin/i-without-dot-tiny.png (100%) rename resources/{g2/font => fonts}/latin/interpunct-bold.png (100%) rename resources/{g2/font => fonts}/latin/interpunct-small.png (100%) rename resources/{g2/font => fonts}/latin/interpunct-tiny.png (100%) rename resources/{g2/font => fonts}/latin/j-bold.png (100%) rename resources/{g2/font => fonts}/latin/j-circumflex-bold.png (100%) rename resources/{g2/font => fonts}/latin/j-circumflex-small.png (100%) rename resources/{g2/font => fonts}/latin/j-circumflex-tiny.png (100%) rename resources/{g2/font => fonts}/latin/j-circumflex-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/j-circumflex-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/j-circumflex-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/j-small.png (100%) rename resources/{g2/font => fonts}/latin/j-tiny.png (100%) rename resources/{g2/font => fonts}/latin/l-bold.png (100%) rename resources/{g2/font => fonts}/latin/l-small.png (100%) rename resources/{g2/font => fonts}/latin/l-tiny.png (100%) rename resources/{g2/font => fonts}/latin/n-caron-bold.png (100%) rename resources/{g2/font => fonts}/latin/n-caron-small.png (100%) rename resources/{g2/font => fonts}/latin/n-caron-tiny.png (100%) rename resources/{g2/font => fonts}/latin/n-caron-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/n-caron-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/n-caron-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/o-double-acute-bold.png (100%) rename resources/{g2/font => fonts}/latin/o-double-acute-small.png (100%) rename resources/{g2/font => fonts}/latin/o-double-acute-tiny.png (100%) rename resources/{g2/font => fonts}/latin/o-double-acute-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/o-double-acute-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/o-double-acute-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/o-stroke-bold.png (100%) rename resources/{g2/font => fonts}/latin/o-stroke-small.png (100%) rename resources/{g2/font => fonts}/latin/o-stroke-tiny.png (100%) rename resources/{g2/font => fonts}/latin/o-stroke-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/o-stroke-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/o-stroke-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/oe-bold.png (100%) rename resources/{g2/font => fonts}/latin/oe-small.png (100%) rename resources/{g2/font => fonts}/latin/oe-tiny.png (100%) rename resources/{g2/font => fonts}/latin/oe-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/oe-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/oe-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/r-caron-bold.png (100%) rename resources/{g2/font => fonts}/latin/r-caron-small.png (100%) rename resources/{g2/font => fonts}/latin/r-caron-tiny.png (100%) rename resources/{g2/font => fonts}/latin/r-caron-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/r-caron-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/r-caron-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/s-caron-bold.png (100%) rename resources/{g2/font => fonts}/latin/s-caron-small.png (100%) rename resources/{g2/font => fonts}/latin/s-caron-tiny.png (100%) rename resources/{g2/font => fonts}/latin/s-caron-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/s-caron-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/s-caron-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/s-cedilla-bold.png (100%) rename resources/{g2/font => fonts}/latin/s-cedilla-small.png (100%) rename resources/{g2/font => fonts}/latin/s-cedilla-tiny.png (100%) rename resources/{g2/font => fonts}/latin/s-cedilla-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/s-cedilla-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/s-cedilla-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/s-circumflex-bold.png (100%) rename resources/{g2/font => fonts}/latin/s-circumflex-small.png (100%) rename resources/{g2/font => fonts}/latin/s-circumflex-tiny.png (100%) rename resources/{g2/font => fonts}/latin/s-circumflex-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/s-circumflex-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/s-circumflex-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/t-caron-bold.png (100%) rename resources/{g2/font => fonts}/latin/t-caron-small.png (100%) rename resources/{g2/font => fonts}/latin/t-caron-tiny.png (100%) rename resources/{g2/font => fonts}/latin/t-caron-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/t-caron-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/t-caron-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/t-comma-bold.png (100%) rename resources/{g2/font => fonts}/latin/t-comma-small.png (100%) rename resources/{g2/font => fonts}/latin/t-comma-tiny.png (100%) rename resources/{g2/font => fonts}/latin/t-comma-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/t-comma-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/t-comma-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/u-breve-bold.png (100%) rename resources/{g2/font => fonts}/latin/u-breve-small.png (100%) rename resources/{g2/font => fonts}/latin/u-breve-tiny.png (100%) rename resources/{g2/font => fonts}/latin/u-breve-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/u-breve-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/u-breve-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/u-double-acute-bold.png (100%) rename resources/{g2/font => fonts}/latin/u-double-acute-small.png (100%) rename resources/{g2/font => fonts}/latin/u-double-acute-tiny.png (100%) rename resources/{g2/font => fonts}/latin/u-double-acute-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/u-double-acute-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/u-double-acute-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/u-ring-bold.png (100%) rename resources/{g2/font => fonts}/latin/u-ring-small.png (100%) rename resources/{g2/font => fonts}/latin/u-ring-tiny.png (100%) rename resources/{g2/font => fonts}/latin/u-ring-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/u-ring-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/u-ring-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/w-circumflex-bold.png (100%) rename resources/{g2/font => fonts}/latin/w-circumflex-small.png (100%) rename resources/{g2/font => fonts}/latin/w-circumflex-tiny.png (100%) rename resources/{g2/font => fonts}/latin/w-circumflex-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/w-circumflex-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/w-circumflex-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/y-acute-bold.png (100%) rename resources/{g2/font => fonts}/latin/y-acute-small.png (100%) rename resources/{g2/font => fonts}/latin/y-acute-tiny.png (100%) rename resources/{g2/font => fonts}/latin/y-acute-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/y-acute-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/y-acute-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/y-circumflex-bold.png (100%) rename resources/{g2/font => fonts}/latin/y-circumflex-small.png (100%) rename resources/{g2/font => fonts}/latin/y-circumflex-tiny.png (100%) rename resources/{g2/font => fonts}/latin/y-circumflex-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/y-circumflex-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/y-circumflex-uc-tiny.png (100%) rename resources/{g2/font => fonts}/latin/z-caron-bold.png (100%) rename resources/{g2/font => fonts}/latin/z-caron-small.png (100%) rename resources/{g2/font => fonts}/latin/z-caron-tiny.png (100%) rename resources/{g2/font => fonts}/latin/z-caron-uc-bold.png (100%) rename resources/{g2/font => fonts}/latin/z-caron-uc-small.png (100%) rename resources/{g2/font => fonts}/latin/z-caron-uc-tiny.png (100%) rename resources/{g2/font => fonts}/left-brace-bold.png (100%) rename resources/{g2/font => fonts}/left-brace-small.png (100%) rename resources/{g2/font => fonts}/left-brace-tiny.png (100%) rename resources/{g2/font => fonts}/right-brace-bold.png (100%) rename resources/{g2/font => fonts}/right-brace-small.png (100%) rename resources/{g2/font => fonts}/right-brace-tiny.png (100%) rename resources/{g2/font => fonts}/rouble-bold.png (100%) rename resources/{g2/font => fonts}/rouble-small.png (100%) rename resources/{g2/font => fonts}/rouble-tiny.png (100%) create mode 100644 resources/fonts/sprites.json rename resources/{g2/font => fonts}/tilde-bold.png (100%) rename resources/{g2/font => fonts}/tilde-small.png (100%) rename resources/{g2/font => fonts}/tilde-tiny.png (100%) rename resources/{g2/font => fonts}/vertical-bar-bold.png (100%) rename resources/{g2/font => fonts}/vertical-bar-small.png (100%) rename resources/{g2/font => fonts}/vertical-bar-tiny.png (100%) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 63609d5fa3..5b50416793 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -150,7 +150,7 @@ jobs: - name: Run check-changelog-formatting run: scripts/check-changelog-formatting g2dat: - name: g2.dat + name: g2.dat and fonts.dat runs-on: ubuntu-latest needs: build_variables steps: @@ -167,11 +167,19 @@ jobs: - name: Build g2.dat run: | gxc build g2.dat OpenRCT2/resources/g2/sprites.json - - name: Upload artifacts + - name: Build fonts.dat + run: | + gxc build fonts.dat OpenRCT2/resources/fonts/sprites.json + - name: Upload g2.dat uses: actions/upload-artifact@v4 with: name: g2-${{ needs.build_variables.outputs.name }}.dat path: g2.dat + - name: Upload fonts.dat + uses: actions/upload-artifact@v4 + with: + name: fonts-${{ needs.build_variables.outputs.name }}.dat + path: fonts.dat windows: name: Windows runs-on: windows-latest @@ -235,6 +243,12 @@ jobs: with: name: g2-${{ needs.build_variables.outputs.name }}.dat path: bin/data + - name: Download fonts.dat on ARM64 + if: matrix.platform == 'arm64' + uses: actions/download-artifact@v4 + with: + name: fonts-${{ needs.build_variables.outputs.name }}.dat + path: bin/data - name: Build artifacts run: | . scripts/setenv -q diff --git a/.gitignore b/.gitignore index af2ff4ec57..a0df0e76e3 100644 --- a/.gitignore +++ b/.gitignore @@ -24,6 +24,7 @@ libversion # Downloaded or built data files data/g2.dat +data/fonts.dat data/sequence data/object data/assetpack diff --git a/CMakeLists.txt b/CMakeLists.txt index 813dbc88f1..36e06938b5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -391,16 +391,31 @@ if(NOT DISABLE_GUI) include("${ROOT_DIR}/src/openrct2-ui/CMakeLists.txt" NO_POLICY_SCOPE) endif() -# g2 -if (NOT (MACOS_BUNDLE AND (NOT CMAKE_OSX_ARCHITECTURES MATCHES "${SYSTEM_MACOS_ARCH}"))) - add_custom_command( - OUTPUT g2.dat - COMMAND ./openrct2-cli sprite build ${CMAKE_BINARY_DIR}/g2.dat ${ROOT_DIR}/resources/g2/sprites.json - WORKING_DIRECTORY ${CMAKE_BINARY_DIR} - ) - add_custom_target(g2 DEPENDS OpenRCT2::openrct2-cli g2.dat) +# graphics files (g2.dat and font.dat) +if (NOT CMAKE_CROSSCOMPILING) + set(graphics_files "g2" "fonts") + + foreach(graphics_file ${graphics_files}) + set(output_file "${graphics_file}.dat") + set(json_file "${ROOT_DIR}/resources/${graphics_file}/sprites.json") + file(GLOB_RECURSE dependent_files "${ROOT_DIR}/resources/${graphics_file}/*") + add_custom_command( + OUTPUT ${output_file} + COMMAND ./openrct2-cli sprite build "${CMAKE_BINARY_DIR}/${output_file}" "${json_file}" + WORKING_DIRECTORY "${CMAKE_BINARY_DIR}" + DEPENDS ${dependent_files} + ) + list(APPEND output_files "${output_file}") + endforeach() + + add_custom_target(graphics DEPENDS OpenRCT2::openrct2-cli ${output_files}) + + if(NOT DISABLE_GUI) + add_dependencies(openrct2 graphics) + endif() + else () - message("Skipping g2.dat generation in macOS cross-compile") + message("Skipping graphics generation in cross-compile") endif () # Include tests @@ -422,9 +437,6 @@ if (NOT MACOS_BUNDLE OR (MACOS_BUNDLE AND WITH_TESTS)) "${ROOT_DIR}/distribution/scripting.md" "${ROOT_DIR}/distribution/openrct2.d.ts") - # CMake does not allow specifying a dependency chain which includes built-in - # targets, like `install`, so we have to trick it and execute dependency ourselves. - install(CODE "execute_process(COMMAND \"${CMAKE_COMMAND}\" --build \"${CMAKE_CURRENT_BINARY_DIR}\" --target g2)") if (DOWNLOAD_TITLE_SEQUENCES) # Checks if this version of the title sequences are already installed, updates if necessary # if /data/sequence exists, it will overwrite this anyways (see `install(DIRECTORY "data/" ...)` below) @@ -487,6 +499,7 @@ if (NOT MACOS_BUNDLE OR (MACOS_BUNDLE AND WITH_TESTS)) )") endif () install(FILES "${CMAKE_CURRENT_BINARY_DIR}/g2.dat" DESTINATION "${CMAKE_INSTALL_DATADIR}/openrct2") + install(FILES "${CMAKE_CURRENT_BINARY_DIR}/fonts.dat" DESTINATION "${CMAKE_INSTALL_DATADIR}/openrct2") install(DIRECTORY "data/" DESTINATION "${CMAKE_INSTALL_DATADIR}/openrct2") # even when building WITH_TESTS, none of the below install steps are required for OpenRCT2.app diff --git a/openrct2.targets b/openrct2.targets index fb9ece9173..3f2be0a965 100644 --- a/openrct2.targets +++ b/openrct2.targets @@ -9,6 +9,7 @@ openrct2-cli $(SolutionDir)src\$(CLIProjectName)\$(CLIProjectName).vcxproj $(OutDir)$(CLIProjectName).exe + $(OutDir)$(CLIProjectName).exe $(OutDir)data\ @@ -18,12 +19,15 @@ $(SolutionDir)data\scenario_patches\ $(SolutionDir)resources\g2\ $(ResourcesG2Path)sprites.json + $(SolutionDir)resources\fonts\ + $(ResourcesFontsPath)sprites.json $(OutDir)data\ + - + + + + + + + + + + + + diff --git a/resources/g2/font/cyrillic/U1028-bold.png b/resources/fonts/cyrillic/U1028-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1028-bold.png rename to resources/fonts/cyrillic/U1028-bold.png diff --git a/resources/g2/font/cyrillic/U1028-small.png b/resources/fonts/cyrillic/U1028-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1028-small.png rename to resources/fonts/cyrillic/U1028-small.png diff --git a/resources/g2/font/cyrillic/U1028-tiny.png b/resources/fonts/cyrillic/U1028-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1028-tiny.png rename to resources/fonts/cyrillic/U1028-tiny.png diff --git a/resources/g2/font/cyrillic/U1041-bold.png b/resources/fonts/cyrillic/U1041-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1041-bold.png rename to resources/fonts/cyrillic/U1041-bold.png diff --git a/resources/g2/font/cyrillic/U1041-small.png b/resources/fonts/cyrillic/U1041-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1041-small.png rename to resources/fonts/cyrillic/U1041-small.png diff --git a/resources/g2/font/cyrillic/U1041-tiny.png b/resources/fonts/cyrillic/U1041-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1041-tiny.png rename to resources/fonts/cyrillic/U1041-tiny.png diff --git a/resources/g2/font/cyrillic/U1043-bold.png b/resources/fonts/cyrillic/U1043-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1043-bold.png rename to resources/fonts/cyrillic/U1043-bold.png diff --git a/resources/g2/font/cyrillic/U1043-small.png b/resources/fonts/cyrillic/U1043-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1043-small.png rename to resources/fonts/cyrillic/U1043-small.png diff --git a/resources/g2/font/cyrillic/U1043-tiny.png b/resources/fonts/cyrillic/U1043-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1043-tiny.png rename to resources/fonts/cyrillic/U1043-tiny.png diff --git a/resources/g2/font/cyrillic/U1044-bold.png b/resources/fonts/cyrillic/U1044-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1044-bold.png rename to resources/fonts/cyrillic/U1044-bold.png diff --git a/resources/g2/font/cyrillic/U1044-small.png b/resources/fonts/cyrillic/U1044-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1044-small.png rename to resources/fonts/cyrillic/U1044-small.png diff --git a/resources/g2/font/cyrillic/U1044-tiny.png b/resources/fonts/cyrillic/U1044-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1044-tiny.png rename to resources/fonts/cyrillic/U1044-tiny.png diff --git a/resources/g2/font/cyrillic/U1046-bold.png b/resources/fonts/cyrillic/U1046-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1046-bold.png rename to resources/fonts/cyrillic/U1046-bold.png diff --git a/resources/g2/font/cyrillic/U1046-small.png b/resources/fonts/cyrillic/U1046-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1046-small.png rename to resources/fonts/cyrillic/U1046-small.png diff --git a/resources/g2/font/cyrillic/U1046-tiny.png b/resources/fonts/cyrillic/U1046-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1046-tiny.png rename to resources/fonts/cyrillic/U1046-tiny.png diff --git a/resources/g2/font/cyrillic/U1047-bold.png b/resources/fonts/cyrillic/U1047-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1047-bold.png rename to resources/fonts/cyrillic/U1047-bold.png diff --git a/resources/g2/font/cyrillic/U1047-small.png b/resources/fonts/cyrillic/U1047-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1047-small.png rename to resources/fonts/cyrillic/U1047-small.png diff --git a/resources/g2/font/cyrillic/U1047-tiny.png b/resources/fonts/cyrillic/U1047-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1047-tiny.png rename to resources/fonts/cyrillic/U1047-tiny.png diff --git a/resources/g2/font/cyrillic/U1048-bold.png b/resources/fonts/cyrillic/U1048-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1048-bold.png rename to resources/fonts/cyrillic/U1048-bold.png diff --git a/resources/g2/font/cyrillic/U1048-small.png b/resources/fonts/cyrillic/U1048-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1048-small.png rename to resources/fonts/cyrillic/U1048-small.png diff --git a/resources/g2/font/cyrillic/U1048-tiny.png b/resources/fonts/cyrillic/U1048-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1048-tiny.png rename to resources/fonts/cyrillic/U1048-tiny.png diff --git a/resources/g2/font/cyrillic/U1049-bold.png b/resources/fonts/cyrillic/U1049-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1049-bold.png rename to resources/fonts/cyrillic/U1049-bold.png diff --git a/resources/g2/font/cyrillic/U1049-small.png b/resources/fonts/cyrillic/U1049-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1049-small.png rename to resources/fonts/cyrillic/U1049-small.png diff --git a/resources/g2/font/cyrillic/U1049-tiny.png b/resources/fonts/cyrillic/U1049-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1049-tiny.png rename to resources/fonts/cyrillic/U1049-tiny.png diff --git a/resources/g2/font/cyrillic/U1051-bold.png b/resources/fonts/cyrillic/U1051-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1051-bold.png rename to resources/fonts/cyrillic/U1051-bold.png diff --git a/resources/g2/font/cyrillic/U1051-small.png b/resources/fonts/cyrillic/U1051-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1051-small.png rename to resources/fonts/cyrillic/U1051-small.png diff --git a/resources/g2/font/cyrillic/U1051-tiny.png b/resources/fonts/cyrillic/U1051-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1051-tiny.png rename to resources/fonts/cyrillic/U1051-tiny.png diff --git a/resources/g2/font/cyrillic/U1055-bold.png b/resources/fonts/cyrillic/U1055-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1055-bold.png rename to resources/fonts/cyrillic/U1055-bold.png diff --git a/resources/g2/font/cyrillic/U1055-small.png b/resources/fonts/cyrillic/U1055-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1055-small.png rename to resources/fonts/cyrillic/U1055-small.png diff --git a/resources/g2/font/cyrillic/U1055-tiny.png b/resources/fonts/cyrillic/U1055-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1055-tiny.png rename to resources/fonts/cyrillic/U1055-tiny.png diff --git a/resources/g2/font/cyrillic/U1059-bold.png b/resources/fonts/cyrillic/U1059-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1059-bold.png rename to resources/fonts/cyrillic/U1059-bold.png diff --git a/resources/g2/font/cyrillic/U1059-small.png b/resources/fonts/cyrillic/U1059-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1059-small.png rename to resources/fonts/cyrillic/U1059-small.png diff --git a/resources/g2/font/cyrillic/U1059-tiny.png b/resources/fonts/cyrillic/U1059-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1059-tiny.png rename to resources/fonts/cyrillic/U1059-tiny.png diff --git a/resources/g2/font/cyrillic/U1060-bold.png b/resources/fonts/cyrillic/U1060-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1060-bold.png rename to resources/fonts/cyrillic/U1060-bold.png diff --git a/resources/g2/font/cyrillic/U1060-small.png b/resources/fonts/cyrillic/U1060-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1060-small.png rename to resources/fonts/cyrillic/U1060-small.png diff --git a/resources/g2/font/cyrillic/U1060-tiny.png b/resources/fonts/cyrillic/U1060-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1060-tiny.png rename to resources/fonts/cyrillic/U1060-tiny.png diff --git a/resources/g2/font/cyrillic/U1062-bold.png b/resources/fonts/cyrillic/U1062-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1062-bold.png rename to resources/fonts/cyrillic/U1062-bold.png diff --git a/resources/g2/font/cyrillic/U1062-small.png b/resources/fonts/cyrillic/U1062-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1062-small.png rename to resources/fonts/cyrillic/U1062-small.png diff --git a/resources/g2/font/cyrillic/U1062-tiny.png b/resources/fonts/cyrillic/U1062-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1062-tiny.png rename to resources/fonts/cyrillic/U1062-tiny.png diff --git a/resources/g2/font/cyrillic/U1063-bold.png b/resources/fonts/cyrillic/U1063-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1063-bold.png rename to resources/fonts/cyrillic/U1063-bold.png diff --git a/resources/g2/font/cyrillic/U1063-small.png b/resources/fonts/cyrillic/U1063-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1063-small.png rename to resources/fonts/cyrillic/U1063-small.png diff --git a/resources/g2/font/cyrillic/U1063-tiny.png b/resources/fonts/cyrillic/U1063-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1063-tiny.png rename to resources/fonts/cyrillic/U1063-tiny.png diff --git a/resources/g2/font/cyrillic/U1064-bold.png b/resources/fonts/cyrillic/U1064-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1064-bold.png rename to resources/fonts/cyrillic/U1064-bold.png diff --git a/resources/g2/font/cyrillic/U1064-small.png b/resources/fonts/cyrillic/U1064-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1064-small.png rename to resources/fonts/cyrillic/U1064-small.png diff --git a/resources/g2/font/cyrillic/U1064-tiny.png b/resources/fonts/cyrillic/U1064-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1064-tiny.png rename to resources/fonts/cyrillic/U1064-tiny.png diff --git a/resources/g2/font/cyrillic/U1065-bold.png b/resources/fonts/cyrillic/U1065-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1065-bold.png rename to resources/fonts/cyrillic/U1065-bold.png diff --git a/resources/g2/font/cyrillic/U1065-small.png b/resources/fonts/cyrillic/U1065-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1065-small.png rename to resources/fonts/cyrillic/U1065-small.png diff --git a/resources/g2/font/cyrillic/U1065-tiny.png b/resources/fonts/cyrillic/U1065-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1065-tiny.png rename to resources/fonts/cyrillic/U1065-tiny.png diff --git a/resources/g2/font/cyrillic/U1066-bold.png b/resources/fonts/cyrillic/U1066-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1066-bold.png rename to resources/fonts/cyrillic/U1066-bold.png diff --git a/resources/g2/font/cyrillic/U1066-small.png b/resources/fonts/cyrillic/U1066-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1066-small.png rename to resources/fonts/cyrillic/U1066-small.png diff --git a/resources/g2/font/cyrillic/U1066-tiny.png b/resources/fonts/cyrillic/U1066-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1066-tiny.png rename to resources/fonts/cyrillic/U1066-tiny.png diff --git a/resources/g2/font/cyrillic/U1067-bold.png b/resources/fonts/cyrillic/U1067-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1067-bold.png rename to resources/fonts/cyrillic/U1067-bold.png diff --git a/resources/g2/font/cyrillic/U1067-small.png b/resources/fonts/cyrillic/U1067-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1067-small.png rename to resources/fonts/cyrillic/U1067-small.png diff --git a/resources/g2/font/cyrillic/U1067-tiny.png b/resources/fonts/cyrillic/U1067-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1067-tiny.png rename to resources/fonts/cyrillic/U1067-tiny.png diff --git a/resources/g2/font/cyrillic/U1068-bold.png b/resources/fonts/cyrillic/U1068-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1068-bold.png rename to resources/fonts/cyrillic/U1068-bold.png diff --git a/resources/g2/font/cyrillic/U1068-small.png b/resources/fonts/cyrillic/U1068-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1068-small.png rename to resources/fonts/cyrillic/U1068-small.png diff --git a/resources/g2/font/cyrillic/U1068-tiny.png b/resources/fonts/cyrillic/U1068-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1068-tiny.png rename to resources/fonts/cyrillic/U1068-tiny.png diff --git a/resources/g2/font/cyrillic/U1069-bold.png b/resources/fonts/cyrillic/U1069-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1069-bold.png rename to resources/fonts/cyrillic/U1069-bold.png diff --git a/resources/g2/font/cyrillic/U1069-small.png b/resources/fonts/cyrillic/U1069-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1069-small.png rename to resources/fonts/cyrillic/U1069-small.png diff --git a/resources/g2/font/cyrillic/U1069-tiny.png b/resources/fonts/cyrillic/U1069-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1069-tiny.png rename to resources/fonts/cyrillic/U1069-tiny.png diff --git a/resources/g2/font/cyrillic/U1070-bold.png b/resources/fonts/cyrillic/U1070-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1070-bold.png rename to resources/fonts/cyrillic/U1070-bold.png diff --git a/resources/g2/font/cyrillic/U1070-small.png b/resources/fonts/cyrillic/U1070-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1070-small.png rename to resources/fonts/cyrillic/U1070-small.png diff --git a/resources/g2/font/cyrillic/U1070-tiny.png b/resources/fonts/cyrillic/U1070-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1070-tiny.png rename to resources/fonts/cyrillic/U1070-tiny.png diff --git a/resources/g2/font/cyrillic/U1071-bold.png b/resources/fonts/cyrillic/U1071-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1071-bold.png rename to resources/fonts/cyrillic/U1071-bold.png diff --git a/resources/g2/font/cyrillic/U1071-small.png b/resources/fonts/cyrillic/U1071-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1071-small.png rename to resources/fonts/cyrillic/U1071-small.png diff --git a/resources/g2/font/cyrillic/U1071-tiny.png b/resources/fonts/cyrillic/U1071-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1071-tiny.png rename to resources/fonts/cyrillic/U1071-tiny.png diff --git a/resources/g2/font/cyrillic/U1073-bold.png b/resources/fonts/cyrillic/U1073-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1073-bold.png rename to resources/fonts/cyrillic/U1073-bold.png diff --git a/resources/g2/font/cyrillic/U1073-small.png b/resources/fonts/cyrillic/U1073-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1073-small.png rename to resources/fonts/cyrillic/U1073-small.png diff --git a/resources/g2/font/cyrillic/U1073-tiny.png b/resources/fonts/cyrillic/U1073-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1073-tiny.png rename to resources/fonts/cyrillic/U1073-tiny.png diff --git a/resources/g2/font/cyrillic/U1074-bold.png b/resources/fonts/cyrillic/U1074-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1074-bold.png rename to resources/fonts/cyrillic/U1074-bold.png diff --git a/resources/g2/font/cyrillic/U1074-small.png b/resources/fonts/cyrillic/U1074-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1074-small.png rename to resources/fonts/cyrillic/U1074-small.png diff --git a/resources/g2/font/cyrillic/U1074-tiny.png b/resources/fonts/cyrillic/U1074-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1074-tiny.png rename to resources/fonts/cyrillic/U1074-tiny.png diff --git a/resources/g2/font/cyrillic/U1075-bold.png b/resources/fonts/cyrillic/U1075-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1075-bold.png rename to resources/fonts/cyrillic/U1075-bold.png diff --git a/resources/g2/font/cyrillic/U1075-small.png b/resources/fonts/cyrillic/U1075-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1075-small.png rename to resources/fonts/cyrillic/U1075-small.png diff --git a/resources/g2/font/cyrillic/U1075-tiny.png b/resources/fonts/cyrillic/U1075-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1075-tiny.png rename to resources/fonts/cyrillic/U1075-tiny.png diff --git a/resources/g2/font/cyrillic/U1076-bold.png b/resources/fonts/cyrillic/U1076-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1076-bold.png rename to resources/fonts/cyrillic/U1076-bold.png diff --git a/resources/g2/font/cyrillic/U1076-small.png b/resources/fonts/cyrillic/U1076-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1076-small.png rename to resources/fonts/cyrillic/U1076-small.png diff --git a/resources/g2/font/cyrillic/U1076-tiny.png b/resources/fonts/cyrillic/U1076-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1076-tiny.png rename to resources/fonts/cyrillic/U1076-tiny.png diff --git a/resources/g2/font/cyrillic/U1078-bold.png b/resources/fonts/cyrillic/U1078-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1078-bold.png rename to resources/fonts/cyrillic/U1078-bold.png diff --git a/resources/g2/font/cyrillic/U1078-small.png b/resources/fonts/cyrillic/U1078-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1078-small.png rename to resources/fonts/cyrillic/U1078-small.png diff --git a/resources/g2/font/cyrillic/U1078-tiny.png b/resources/fonts/cyrillic/U1078-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1078-tiny.png rename to resources/fonts/cyrillic/U1078-tiny.png diff --git a/resources/g2/font/cyrillic/U1079-bold.png b/resources/fonts/cyrillic/U1079-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1079-bold.png rename to resources/fonts/cyrillic/U1079-bold.png diff --git a/resources/g2/font/cyrillic/U1079-small.png b/resources/fonts/cyrillic/U1079-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1079-small.png rename to resources/fonts/cyrillic/U1079-small.png diff --git a/resources/g2/font/cyrillic/U1079-tiny.png b/resources/fonts/cyrillic/U1079-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1079-tiny.png rename to resources/fonts/cyrillic/U1079-tiny.png diff --git a/resources/g2/font/cyrillic/U1080-bold.png b/resources/fonts/cyrillic/U1080-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1080-bold.png rename to resources/fonts/cyrillic/U1080-bold.png diff --git a/resources/g2/font/cyrillic/U1080-small.png b/resources/fonts/cyrillic/U1080-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1080-small.png rename to resources/fonts/cyrillic/U1080-small.png diff --git a/resources/g2/font/cyrillic/U1080-tiny.png b/resources/fonts/cyrillic/U1080-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1080-tiny.png rename to resources/fonts/cyrillic/U1080-tiny.png diff --git a/resources/g2/font/cyrillic/U1081-bold.png b/resources/fonts/cyrillic/U1081-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1081-bold.png rename to resources/fonts/cyrillic/U1081-bold.png diff --git a/resources/g2/font/cyrillic/U1081-small.png b/resources/fonts/cyrillic/U1081-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1081-small.png rename to resources/fonts/cyrillic/U1081-small.png diff --git a/resources/g2/font/cyrillic/U1081-tiny.png b/resources/fonts/cyrillic/U1081-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1081-tiny.png rename to resources/fonts/cyrillic/U1081-tiny.png diff --git a/resources/g2/font/cyrillic/U1082-bold.png b/resources/fonts/cyrillic/U1082-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1082-bold.png rename to resources/fonts/cyrillic/U1082-bold.png diff --git a/resources/g2/font/cyrillic/U1082-small.png b/resources/fonts/cyrillic/U1082-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1082-small.png rename to resources/fonts/cyrillic/U1082-small.png diff --git a/resources/g2/font/cyrillic/U1082-tiny.png b/resources/fonts/cyrillic/U1082-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1082-tiny.png rename to resources/fonts/cyrillic/U1082-tiny.png diff --git a/resources/g2/font/cyrillic/U1083-bold.png b/resources/fonts/cyrillic/U1083-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1083-bold.png rename to resources/fonts/cyrillic/U1083-bold.png diff --git a/resources/g2/font/cyrillic/U1083-small.png b/resources/fonts/cyrillic/U1083-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1083-small.png rename to resources/fonts/cyrillic/U1083-small.png diff --git a/resources/g2/font/cyrillic/U1083-tiny.png b/resources/fonts/cyrillic/U1083-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1083-tiny.png rename to resources/fonts/cyrillic/U1083-tiny.png diff --git a/resources/g2/font/cyrillic/U1084-bold.png b/resources/fonts/cyrillic/U1084-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1084-bold.png rename to resources/fonts/cyrillic/U1084-bold.png diff --git a/resources/g2/font/cyrillic/U1084-small.png b/resources/fonts/cyrillic/U1084-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1084-small.png rename to resources/fonts/cyrillic/U1084-small.png diff --git a/resources/g2/font/cyrillic/U1084-tiny.png b/resources/fonts/cyrillic/U1084-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1084-tiny.png rename to resources/fonts/cyrillic/U1084-tiny.png diff --git a/resources/g2/font/cyrillic/U1085-bold.png b/resources/fonts/cyrillic/U1085-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1085-bold.png rename to resources/fonts/cyrillic/U1085-bold.png diff --git a/resources/g2/font/cyrillic/U1085-small.png b/resources/fonts/cyrillic/U1085-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1085-small.png rename to resources/fonts/cyrillic/U1085-small.png diff --git a/resources/g2/font/cyrillic/U1085-tiny.png b/resources/fonts/cyrillic/U1085-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1085-tiny.png rename to resources/fonts/cyrillic/U1085-tiny.png diff --git a/resources/g2/font/cyrillic/U1087-bold.png b/resources/fonts/cyrillic/U1087-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1087-bold.png rename to resources/fonts/cyrillic/U1087-bold.png diff --git a/resources/g2/font/cyrillic/U1087-small.png b/resources/fonts/cyrillic/U1087-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1087-small.png rename to resources/fonts/cyrillic/U1087-small.png diff --git a/resources/g2/font/cyrillic/U1087-tiny.png b/resources/fonts/cyrillic/U1087-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1087-tiny.png rename to resources/fonts/cyrillic/U1087-tiny.png diff --git a/resources/g2/font/cyrillic/U1090-bold.png b/resources/fonts/cyrillic/U1090-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1090-bold.png rename to resources/fonts/cyrillic/U1090-bold.png diff --git a/resources/g2/font/cyrillic/U1090-small.png b/resources/fonts/cyrillic/U1090-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1090-small.png rename to resources/fonts/cyrillic/U1090-small.png diff --git a/resources/g2/font/cyrillic/U1090-tiny.png b/resources/fonts/cyrillic/U1090-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1090-tiny.png rename to resources/fonts/cyrillic/U1090-tiny.png diff --git a/resources/g2/font/cyrillic/U1092-bold.png b/resources/fonts/cyrillic/U1092-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1092-bold.png rename to resources/fonts/cyrillic/U1092-bold.png diff --git a/resources/g2/font/cyrillic/U1092-small.png b/resources/fonts/cyrillic/U1092-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1092-small.png rename to resources/fonts/cyrillic/U1092-small.png diff --git a/resources/g2/font/cyrillic/U1092-tiny.png b/resources/fonts/cyrillic/U1092-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1092-tiny.png rename to resources/fonts/cyrillic/U1092-tiny.png diff --git a/resources/g2/font/cyrillic/U1094-bold.png b/resources/fonts/cyrillic/U1094-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1094-bold.png rename to resources/fonts/cyrillic/U1094-bold.png diff --git a/resources/g2/font/cyrillic/U1094-small.png b/resources/fonts/cyrillic/U1094-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1094-small.png rename to resources/fonts/cyrillic/U1094-small.png diff --git a/resources/g2/font/cyrillic/U1094-tiny.png b/resources/fonts/cyrillic/U1094-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1094-tiny.png rename to resources/fonts/cyrillic/U1094-tiny.png diff --git a/resources/g2/font/cyrillic/U1095-bold.png b/resources/fonts/cyrillic/U1095-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1095-bold.png rename to resources/fonts/cyrillic/U1095-bold.png diff --git a/resources/g2/font/cyrillic/U1095-small.png b/resources/fonts/cyrillic/U1095-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1095-small.png rename to resources/fonts/cyrillic/U1095-small.png diff --git a/resources/g2/font/cyrillic/U1095-tiny.png b/resources/fonts/cyrillic/U1095-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1095-tiny.png rename to resources/fonts/cyrillic/U1095-tiny.png diff --git a/resources/g2/font/cyrillic/U1096-bold.png b/resources/fonts/cyrillic/U1096-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1096-bold.png rename to resources/fonts/cyrillic/U1096-bold.png diff --git a/resources/g2/font/cyrillic/U1096-small.png b/resources/fonts/cyrillic/U1096-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1096-small.png rename to resources/fonts/cyrillic/U1096-small.png diff --git a/resources/g2/font/cyrillic/U1096-tiny.png b/resources/fonts/cyrillic/U1096-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1096-tiny.png rename to resources/fonts/cyrillic/U1096-tiny.png diff --git a/resources/g2/font/cyrillic/U1097-bold.png b/resources/fonts/cyrillic/U1097-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1097-bold.png rename to resources/fonts/cyrillic/U1097-bold.png diff --git a/resources/g2/font/cyrillic/U1097-small.png b/resources/fonts/cyrillic/U1097-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1097-small.png rename to resources/fonts/cyrillic/U1097-small.png diff --git a/resources/g2/font/cyrillic/U1097-tiny.png b/resources/fonts/cyrillic/U1097-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1097-tiny.png rename to resources/fonts/cyrillic/U1097-tiny.png diff --git a/resources/g2/font/cyrillic/U1099-bold.png b/resources/fonts/cyrillic/U1099-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1099-bold.png rename to resources/fonts/cyrillic/U1099-bold.png diff --git a/resources/g2/font/cyrillic/U1099-small.png b/resources/fonts/cyrillic/U1099-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1099-small.png rename to resources/fonts/cyrillic/U1099-small.png diff --git a/resources/g2/font/cyrillic/U1099-tiny.png b/resources/fonts/cyrillic/U1099-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1099-tiny.png rename to resources/fonts/cyrillic/U1099-tiny.png diff --git a/resources/g2/font/cyrillic/U1100-bold.png b/resources/fonts/cyrillic/U1100-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1100-bold.png rename to resources/fonts/cyrillic/U1100-bold.png diff --git a/resources/g2/font/cyrillic/U1100-small.png b/resources/fonts/cyrillic/U1100-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1100-small.png rename to resources/fonts/cyrillic/U1100-small.png diff --git a/resources/g2/font/cyrillic/U1100-tiny.png b/resources/fonts/cyrillic/U1100-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1100-tiny.png rename to resources/fonts/cyrillic/U1100-tiny.png diff --git a/resources/g2/font/cyrillic/U1101-bold.png b/resources/fonts/cyrillic/U1101-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1101-bold.png rename to resources/fonts/cyrillic/U1101-bold.png diff --git a/resources/g2/font/cyrillic/U1101-small.png b/resources/fonts/cyrillic/U1101-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1101-small.png rename to resources/fonts/cyrillic/U1101-small.png diff --git a/resources/g2/font/cyrillic/U1101-tiny.png b/resources/fonts/cyrillic/U1101-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1101-tiny.png rename to resources/fonts/cyrillic/U1101-tiny.png diff --git a/resources/g2/font/cyrillic/U1102-bold.png b/resources/fonts/cyrillic/U1102-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1102-bold.png rename to resources/fonts/cyrillic/U1102-bold.png diff --git a/resources/g2/font/cyrillic/U1102-small.png b/resources/fonts/cyrillic/U1102-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1102-small.png rename to resources/fonts/cyrillic/U1102-small.png diff --git a/resources/g2/font/cyrillic/U1102-tiny.png b/resources/fonts/cyrillic/U1102-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1102-tiny.png rename to resources/fonts/cyrillic/U1102-tiny.png diff --git a/resources/g2/font/cyrillic/U1103-bold.png b/resources/fonts/cyrillic/U1103-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1103-bold.png rename to resources/fonts/cyrillic/U1103-bold.png diff --git a/resources/g2/font/cyrillic/U1103-small.png b/resources/fonts/cyrillic/U1103-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1103-small.png rename to resources/fonts/cyrillic/U1103-small.png diff --git a/resources/g2/font/cyrillic/U1103-tiny.png b/resources/fonts/cyrillic/U1103-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1103-tiny.png rename to resources/fonts/cyrillic/U1103-tiny.png diff --git a/resources/g2/font/cyrillic/U1108-bold.png b/resources/fonts/cyrillic/U1108-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1108-bold.png rename to resources/fonts/cyrillic/U1108-bold.png diff --git a/resources/g2/font/cyrillic/U1108-small.png b/resources/fonts/cyrillic/U1108-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1108-small.png rename to resources/fonts/cyrillic/U1108-small.png diff --git a/resources/g2/font/cyrillic/U1108-tiny.png b/resources/fonts/cyrillic/U1108-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1108-tiny.png rename to resources/fonts/cyrillic/U1108-tiny.png diff --git a/resources/g2/font/cyrillic/U1168-bold.png b/resources/fonts/cyrillic/U1168-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1168-bold.png rename to resources/fonts/cyrillic/U1168-bold.png diff --git a/resources/g2/font/cyrillic/U1168-small.png b/resources/fonts/cyrillic/U1168-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1168-small.png rename to resources/fonts/cyrillic/U1168-small.png diff --git a/resources/g2/font/cyrillic/U1168-tiny.png b/resources/fonts/cyrillic/U1168-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1168-tiny.png rename to resources/fonts/cyrillic/U1168-tiny.png diff --git a/resources/g2/font/cyrillic/U1169-bold.png b/resources/fonts/cyrillic/U1169-bold.png similarity index 100% rename from resources/g2/font/cyrillic/U1169-bold.png rename to resources/fonts/cyrillic/U1169-bold.png diff --git a/resources/g2/font/cyrillic/U1169-small.png b/resources/fonts/cyrillic/U1169-small.png similarity index 100% rename from resources/g2/font/cyrillic/U1169-small.png rename to resources/fonts/cyrillic/U1169-small.png diff --git a/resources/g2/font/cyrillic/U1169-tiny.png b/resources/fonts/cyrillic/U1169-tiny.png similarity index 100% rename from resources/g2/font/cyrillic/U1169-tiny.png rename to resources/fonts/cyrillic/U1169-tiny.png diff --git a/resources/g2/font/ellipsis-bold.png b/resources/fonts/ellipsis-bold.png similarity index 100% rename from resources/g2/font/ellipsis-bold.png rename to resources/fonts/ellipsis-bold.png diff --git a/resources/g2/font/ellipsis-small.png b/resources/fonts/ellipsis-small.png similarity index 100% rename from resources/g2/font/ellipsis-small.png rename to resources/fonts/ellipsis-small.png diff --git a/resources/g2/font/ellipsis-tiny.png b/resources/fonts/ellipsis-tiny.png similarity index 100% rename from resources/g2/font/ellipsis-tiny.png rename to resources/fonts/ellipsis-tiny.png diff --git a/resources/g2/font/eye-tiny.png b/resources/fonts/eye-tiny.png similarity index 100% rename from resources/g2/font/eye-tiny.png rename to resources/fonts/eye-tiny.png diff --git a/resources/g2/font/eye.png b/resources/fonts/eye.png similarity index 100% rename from resources/g2/font/eye.png rename to resources/fonts/eye.png diff --git a/resources/g2/font/german-openquotes-bold.png b/resources/fonts/german-openquotes-bold.png similarity index 100% rename from resources/g2/font/german-openquotes-bold.png rename to resources/fonts/german-openquotes-bold.png diff --git a/resources/g2/font/german-openquotes-small.png b/resources/fonts/german-openquotes-small.png similarity index 100% rename from resources/g2/font/german-openquotes-small.png rename to resources/fonts/german-openquotes-small.png diff --git a/resources/g2/font/german-openquotes-tiny.png b/resources/fonts/german-openquotes-tiny.png similarity index 100% rename from resources/g2/font/german-openquotes-tiny.png rename to resources/fonts/german-openquotes-tiny.png diff --git a/resources/g2/font/guilder-bold.png b/resources/fonts/guilder-bold.png similarity index 100% rename from resources/g2/font/guilder-bold.png rename to resources/fonts/guilder-bold.png diff --git a/resources/g2/font/guilder-small.png b/resources/fonts/guilder-small.png similarity index 100% rename from resources/g2/font/guilder-small.png rename to resources/fonts/guilder-small.png diff --git a/resources/g2/font/guilder-tiny.png b/resources/fonts/guilder-tiny.png similarity index 100% rename from resources/g2/font/guilder-tiny.png rename to resources/fonts/guilder-tiny.png diff --git a/resources/g2/font/latin/a-breve-uc-bold.png b/resources/fonts/latin/a-breve-uc-bold.png similarity index 100% rename from resources/g2/font/latin/a-breve-uc-bold.png rename to resources/fonts/latin/a-breve-uc-bold.png diff --git a/resources/g2/font/latin/a-breve-uc-small.png b/resources/fonts/latin/a-breve-uc-small.png similarity index 100% rename from resources/g2/font/latin/a-breve-uc-small.png rename to resources/fonts/latin/a-breve-uc-small.png diff --git a/resources/g2/font/latin/a-breve-uc-tiny.png b/resources/fonts/latin/a-breve-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/a-breve-uc-tiny.png rename to resources/fonts/latin/a-breve-uc-tiny.png diff --git a/resources/g2/font/latin/ae-bold.png b/resources/fonts/latin/ae-bold.png similarity index 100% rename from resources/g2/font/latin/ae-bold.png rename to resources/fonts/latin/ae-bold.png diff --git a/resources/g2/font/latin/ae-small.png b/resources/fonts/latin/ae-small.png similarity index 100% rename from resources/g2/font/latin/ae-small.png rename to resources/fonts/latin/ae-small.png diff --git a/resources/g2/font/latin/ae-tiny.png b/resources/fonts/latin/ae-tiny.png similarity index 100% rename from resources/g2/font/latin/ae-tiny.png rename to resources/fonts/latin/ae-tiny.png diff --git a/resources/g2/font/latin/ae-uc-bold.png b/resources/fonts/latin/ae-uc-bold.png similarity index 100% rename from resources/g2/font/latin/ae-uc-bold.png rename to resources/fonts/latin/ae-uc-bold.png diff --git a/resources/g2/font/latin/ae-uc-small.png b/resources/fonts/latin/ae-uc-small.png similarity index 100% rename from resources/g2/font/latin/ae-uc-small.png rename to resources/fonts/latin/ae-uc-small.png diff --git a/resources/g2/font/latin/ae-uc-tiny.png b/resources/fonts/latin/ae-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/ae-uc-tiny.png rename to resources/fonts/latin/ae-uc-tiny.png diff --git a/resources/g2/font/latin/c-caron-bold.png b/resources/fonts/latin/c-caron-bold.png similarity index 100% rename from resources/g2/font/latin/c-caron-bold.png rename to resources/fonts/latin/c-caron-bold.png diff --git a/resources/g2/font/latin/c-caron-small.png b/resources/fonts/latin/c-caron-small.png similarity index 100% rename from resources/g2/font/latin/c-caron-small.png rename to resources/fonts/latin/c-caron-small.png diff --git a/resources/g2/font/latin/c-caron-tiny.png b/resources/fonts/latin/c-caron-tiny.png similarity index 100% rename from resources/g2/font/latin/c-caron-tiny.png rename to resources/fonts/latin/c-caron-tiny.png diff --git a/resources/g2/font/latin/c-caron-uc-bold.png b/resources/fonts/latin/c-caron-uc-bold.png similarity index 100% rename from resources/g2/font/latin/c-caron-uc-bold.png rename to resources/fonts/latin/c-caron-uc-bold.png diff --git a/resources/g2/font/latin/c-caron-uc-small.png b/resources/fonts/latin/c-caron-uc-small.png similarity index 100% rename from resources/g2/font/latin/c-caron-uc-small.png rename to resources/fonts/latin/c-caron-uc-small.png diff --git a/resources/g2/font/latin/c-caron-uc-tiny.png b/resources/fonts/latin/c-caron-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/c-caron-uc-tiny.png rename to resources/fonts/latin/c-caron-uc-tiny.png diff --git a/resources/g2/font/latin/c-circumflex-bold.png b/resources/fonts/latin/c-circumflex-bold.png similarity index 100% rename from resources/g2/font/latin/c-circumflex-bold.png rename to resources/fonts/latin/c-circumflex-bold.png diff --git a/resources/g2/font/latin/c-circumflex-small.png b/resources/fonts/latin/c-circumflex-small.png similarity index 100% rename from resources/g2/font/latin/c-circumflex-small.png rename to resources/fonts/latin/c-circumflex-small.png diff --git a/resources/g2/font/latin/c-circumflex-tiny.png b/resources/fonts/latin/c-circumflex-tiny.png similarity index 100% rename from resources/g2/font/latin/c-circumflex-tiny.png rename to resources/fonts/latin/c-circumflex-tiny.png diff --git a/resources/g2/font/latin/c-circumflex-uc-bold.png b/resources/fonts/latin/c-circumflex-uc-bold.png similarity index 100% rename from resources/g2/font/latin/c-circumflex-uc-bold.png rename to resources/fonts/latin/c-circumflex-uc-bold.png diff --git a/resources/g2/font/latin/c-circumflex-uc-small.png b/resources/fonts/latin/c-circumflex-uc-small.png similarity index 100% rename from resources/g2/font/latin/c-circumflex-uc-small.png rename to resources/fonts/latin/c-circumflex-uc-small.png diff --git a/resources/g2/font/latin/c-circumflex-uc-tiny.png b/resources/fonts/latin/c-circumflex-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/c-circumflex-uc-tiny.png rename to resources/fonts/latin/c-circumflex-uc-tiny.png diff --git a/resources/g2/font/latin/d-caron-bold.png b/resources/fonts/latin/d-caron-bold.png similarity index 100% rename from resources/g2/font/latin/d-caron-bold.png rename to resources/fonts/latin/d-caron-bold.png diff --git a/resources/g2/font/latin/d-caron-small.png b/resources/fonts/latin/d-caron-small.png similarity index 100% rename from resources/g2/font/latin/d-caron-small.png rename to resources/fonts/latin/d-caron-small.png diff --git a/resources/g2/font/latin/d-caron-tiny.png b/resources/fonts/latin/d-caron-tiny.png similarity index 100% rename from resources/g2/font/latin/d-caron-tiny.png rename to resources/fonts/latin/d-caron-tiny.png diff --git a/resources/g2/font/latin/d-caron-uc-bold.png b/resources/fonts/latin/d-caron-uc-bold.png similarity index 100% rename from resources/g2/font/latin/d-caron-uc-bold.png rename to resources/fonts/latin/d-caron-uc-bold.png diff --git a/resources/g2/font/latin/d-caron-uc-small.png b/resources/fonts/latin/d-caron-uc-small.png similarity index 100% rename from resources/g2/font/latin/d-caron-uc-small.png rename to resources/fonts/latin/d-caron-uc-small.png diff --git a/resources/g2/font/latin/d-caron-uc-tiny.png b/resources/fonts/latin/d-caron-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/d-caron-uc-tiny.png rename to resources/fonts/latin/d-caron-uc-tiny.png diff --git a/resources/g2/font/latin/e-caron-bold.png b/resources/fonts/latin/e-caron-bold.png similarity index 100% rename from resources/g2/font/latin/e-caron-bold.png rename to resources/fonts/latin/e-caron-bold.png diff --git a/resources/g2/font/latin/e-caron-small.png b/resources/fonts/latin/e-caron-small.png similarity index 100% rename from resources/g2/font/latin/e-caron-small.png rename to resources/fonts/latin/e-caron-small.png diff --git a/resources/g2/font/latin/e-caron-tiny.png b/resources/fonts/latin/e-caron-tiny.png similarity index 100% rename from resources/g2/font/latin/e-caron-tiny.png rename to resources/fonts/latin/e-caron-tiny.png diff --git a/resources/g2/font/latin/e-caron-uc-bold.png b/resources/fonts/latin/e-caron-uc-bold.png similarity index 100% rename from resources/g2/font/latin/e-caron-uc-bold.png rename to resources/fonts/latin/e-caron-uc-bold.png diff --git a/resources/g2/font/latin/e-caron-uc-small.png b/resources/fonts/latin/e-caron-uc-small.png similarity index 100% rename from resources/g2/font/latin/e-caron-uc-small.png rename to resources/fonts/latin/e-caron-uc-small.png diff --git a/resources/g2/font/latin/e-caron-uc-tiny.png b/resources/fonts/latin/e-caron-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/e-caron-uc-tiny.png rename to resources/fonts/latin/e-caron-uc-tiny.png diff --git a/resources/g2/font/latin/g-breve-bold.png b/resources/fonts/latin/g-breve-bold.png similarity index 100% rename from resources/g2/font/latin/g-breve-bold.png rename to resources/fonts/latin/g-breve-bold.png diff --git a/resources/g2/font/latin/g-breve-small.png b/resources/fonts/latin/g-breve-small.png similarity index 100% rename from resources/g2/font/latin/g-breve-small.png rename to resources/fonts/latin/g-breve-small.png diff --git a/resources/g2/font/latin/g-breve-tiny.png b/resources/fonts/latin/g-breve-tiny.png similarity index 100% rename from resources/g2/font/latin/g-breve-tiny.png rename to resources/fonts/latin/g-breve-tiny.png diff --git a/resources/g2/font/latin/g-breve-uc-bold.png b/resources/fonts/latin/g-breve-uc-bold.png similarity index 100% rename from resources/g2/font/latin/g-breve-uc-bold.png rename to resources/fonts/latin/g-breve-uc-bold.png diff --git a/resources/g2/font/latin/g-breve-uc-small.png b/resources/fonts/latin/g-breve-uc-small.png similarity index 100% rename from resources/g2/font/latin/g-breve-uc-small.png rename to resources/fonts/latin/g-breve-uc-small.png diff --git a/resources/g2/font/latin/g-breve-uc-tiny.png b/resources/fonts/latin/g-breve-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/g-breve-uc-tiny.png rename to resources/fonts/latin/g-breve-uc-tiny.png diff --git a/resources/g2/font/latin/g-circumflex-bold.png b/resources/fonts/latin/g-circumflex-bold.png similarity index 100% rename from resources/g2/font/latin/g-circumflex-bold.png rename to resources/fonts/latin/g-circumflex-bold.png diff --git a/resources/g2/font/latin/g-circumflex-small.png b/resources/fonts/latin/g-circumflex-small.png similarity index 100% rename from resources/g2/font/latin/g-circumflex-small.png rename to resources/fonts/latin/g-circumflex-small.png diff --git a/resources/g2/font/latin/g-circumflex-tiny.png b/resources/fonts/latin/g-circumflex-tiny.png similarity index 100% rename from resources/g2/font/latin/g-circumflex-tiny.png rename to resources/fonts/latin/g-circumflex-tiny.png diff --git a/resources/g2/font/latin/g-circumflex-uc-bold.png b/resources/fonts/latin/g-circumflex-uc-bold.png similarity index 100% rename from resources/g2/font/latin/g-circumflex-uc-bold.png rename to resources/fonts/latin/g-circumflex-uc-bold.png diff --git a/resources/g2/font/latin/g-circumflex-uc-small.png b/resources/fonts/latin/g-circumflex-uc-small.png similarity index 100% rename from resources/g2/font/latin/g-circumflex-uc-small.png rename to resources/fonts/latin/g-circumflex-uc-small.png diff --git a/resources/g2/font/latin/g-circumflex-uc-tiny.png b/resources/fonts/latin/g-circumflex-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/g-circumflex-uc-tiny.png rename to resources/fonts/latin/g-circumflex-uc-tiny.png diff --git a/resources/g2/font/latin/h-circumflex-bold.png b/resources/fonts/latin/h-circumflex-bold.png similarity index 100% rename from resources/g2/font/latin/h-circumflex-bold.png rename to resources/fonts/latin/h-circumflex-bold.png diff --git a/resources/g2/font/latin/h-circumflex-small.png b/resources/fonts/latin/h-circumflex-small.png similarity index 100% rename from resources/g2/font/latin/h-circumflex-small.png rename to resources/fonts/latin/h-circumflex-small.png diff --git a/resources/g2/font/latin/h-circumflex-tiny.png b/resources/fonts/latin/h-circumflex-tiny.png similarity index 100% rename from resources/g2/font/latin/h-circumflex-tiny.png rename to resources/fonts/latin/h-circumflex-tiny.png diff --git a/resources/g2/font/latin/h-circumflex-uc-bold.png b/resources/fonts/latin/h-circumflex-uc-bold.png similarity index 100% rename from resources/g2/font/latin/h-circumflex-uc-bold.png rename to resources/fonts/latin/h-circumflex-uc-bold.png diff --git a/resources/g2/font/latin/h-circumflex-uc-small.png b/resources/fonts/latin/h-circumflex-uc-small.png similarity index 100% rename from resources/g2/font/latin/h-circumflex-uc-small.png rename to resources/fonts/latin/h-circumflex-uc-small.png diff --git a/resources/g2/font/latin/h-circumflex-uc-tiny.png b/resources/fonts/latin/h-circumflex-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/h-circumflex-uc-tiny.png rename to resources/fonts/latin/h-circumflex-uc-tiny.png diff --git a/resources/g2/font/latin/i-with-dot-uc-bold.png b/resources/fonts/latin/i-with-dot-uc-bold.png similarity index 100% rename from resources/g2/font/latin/i-with-dot-uc-bold.png rename to resources/fonts/latin/i-with-dot-uc-bold.png diff --git a/resources/g2/font/latin/i-with-dot-uc-small.png b/resources/fonts/latin/i-with-dot-uc-small.png similarity index 100% rename from resources/g2/font/latin/i-with-dot-uc-small.png rename to resources/fonts/latin/i-with-dot-uc-small.png diff --git a/resources/g2/font/latin/i-with-dot-uc-tiny.png b/resources/fonts/latin/i-with-dot-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/i-with-dot-uc-tiny.png rename to resources/fonts/latin/i-with-dot-uc-tiny.png diff --git a/resources/g2/font/latin/i-without-dot-bold.png b/resources/fonts/latin/i-without-dot-bold.png similarity index 100% rename from resources/g2/font/latin/i-without-dot-bold.png rename to resources/fonts/latin/i-without-dot-bold.png diff --git a/resources/g2/font/latin/i-without-dot-small.png b/resources/fonts/latin/i-without-dot-small.png similarity index 100% rename from resources/g2/font/latin/i-without-dot-small.png rename to resources/fonts/latin/i-without-dot-small.png diff --git a/resources/g2/font/latin/i-without-dot-tiny.png b/resources/fonts/latin/i-without-dot-tiny.png similarity index 100% rename from resources/g2/font/latin/i-without-dot-tiny.png rename to resources/fonts/latin/i-without-dot-tiny.png diff --git a/resources/g2/font/latin/interpunct-bold.png b/resources/fonts/latin/interpunct-bold.png similarity index 100% rename from resources/g2/font/latin/interpunct-bold.png rename to resources/fonts/latin/interpunct-bold.png diff --git a/resources/g2/font/latin/interpunct-small.png b/resources/fonts/latin/interpunct-small.png similarity index 100% rename from resources/g2/font/latin/interpunct-small.png rename to resources/fonts/latin/interpunct-small.png diff --git a/resources/g2/font/latin/interpunct-tiny.png b/resources/fonts/latin/interpunct-tiny.png similarity index 100% rename from resources/g2/font/latin/interpunct-tiny.png rename to resources/fonts/latin/interpunct-tiny.png diff --git a/resources/g2/font/latin/j-bold.png b/resources/fonts/latin/j-bold.png similarity index 100% rename from resources/g2/font/latin/j-bold.png rename to resources/fonts/latin/j-bold.png diff --git a/resources/g2/font/latin/j-circumflex-bold.png b/resources/fonts/latin/j-circumflex-bold.png similarity index 100% rename from resources/g2/font/latin/j-circumflex-bold.png rename to resources/fonts/latin/j-circumflex-bold.png diff --git a/resources/g2/font/latin/j-circumflex-small.png b/resources/fonts/latin/j-circumflex-small.png similarity index 100% rename from resources/g2/font/latin/j-circumflex-small.png rename to resources/fonts/latin/j-circumflex-small.png diff --git a/resources/g2/font/latin/j-circumflex-tiny.png b/resources/fonts/latin/j-circumflex-tiny.png similarity index 100% rename from resources/g2/font/latin/j-circumflex-tiny.png rename to resources/fonts/latin/j-circumflex-tiny.png diff --git a/resources/g2/font/latin/j-circumflex-uc-bold.png b/resources/fonts/latin/j-circumflex-uc-bold.png similarity index 100% rename from resources/g2/font/latin/j-circumflex-uc-bold.png rename to resources/fonts/latin/j-circumflex-uc-bold.png diff --git a/resources/g2/font/latin/j-circumflex-uc-small.png b/resources/fonts/latin/j-circumflex-uc-small.png similarity index 100% rename from resources/g2/font/latin/j-circumflex-uc-small.png rename to resources/fonts/latin/j-circumflex-uc-small.png diff --git a/resources/g2/font/latin/j-circumflex-uc-tiny.png b/resources/fonts/latin/j-circumflex-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/j-circumflex-uc-tiny.png rename to resources/fonts/latin/j-circumflex-uc-tiny.png diff --git a/resources/g2/font/latin/j-small.png b/resources/fonts/latin/j-small.png similarity index 100% rename from resources/g2/font/latin/j-small.png rename to resources/fonts/latin/j-small.png diff --git a/resources/g2/font/latin/j-tiny.png b/resources/fonts/latin/j-tiny.png similarity index 100% rename from resources/g2/font/latin/j-tiny.png rename to resources/fonts/latin/j-tiny.png diff --git a/resources/g2/font/latin/l-bold.png b/resources/fonts/latin/l-bold.png similarity index 100% rename from resources/g2/font/latin/l-bold.png rename to resources/fonts/latin/l-bold.png diff --git a/resources/g2/font/latin/l-small.png b/resources/fonts/latin/l-small.png similarity index 100% rename from resources/g2/font/latin/l-small.png rename to resources/fonts/latin/l-small.png diff --git a/resources/g2/font/latin/l-tiny.png b/resources/fonts/latin/l-tiny.png similarity index 100% rename from resources/g2/font/latin/l-tiny.png rename to resources/fonts/latin/l-tiny.png diff --git a/resources/g2/font/latin/n-caron-bold.png b/resources/fonts/latin/n-caron-bold.png similarity index 100% rename from resources/g2/font/latin/n-caron-bold.png rename to resources/fonts/latin/n-caron-bold.png diff --git a/resources/g2/font/latin/n-caron-small.png b/resources/fonts/latin/n-caron-small.png similarity index 100% rename from resources/g2/font/latin/n-caron-small.png rename to resources/fonts/latin/n-caron-small.png diff --git a/resources/g2/font/latin/n-caron-tiny.png b/resources/fonts/latin/n-caron-tiny.png similarity index 100% rename from resources/g2/font/latin/n-caron-tiny.png rename to resources/fonts/latin/n-caron-tiny.png diff --git a/resources/g2/font/latin/n-caron-uc-bold.png b/resources/fonts/latin/n-caron-uc-bold.png similarity index 100% rename from resources/g2/font/latin/n-caron-uc-bold.png rename to resources/fonts/latin/n-caron-uc-bold.png diff --git a/resources/g2/font/latin/n-caron-uc-small.png b/resources/fonts/latin/n-caron-uc-small.png similarity index 100% rename from resources/g2/font/latin/n-caron-uc-small.png rename to resources/fonts/latin/n-caron-uc-small.png diff --git a/resources/g2/font/latin/n-caron-uc-tiny.png b/resources/fonts/latin/n-caron-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/n-caron-uc-tiny.png rename to resources/fonts/latin/n-caron-uc-tiny.png diff --git a/resources/g2/font/latin/o-double-acute-bold.png b/resources/fonts/latin/o-double-acute-bold.png similarity index 100% rename from resources/g2/font/latin/o-double-acute-bold.png rename to resources/fonts/latin/o-double-acute-bold.png diff --git a/resources/g2/font/latin/o-double-acute-small.png b/resources/fonts/latin/o-double-acute-small.png similarity index 100% rename from resources/g2/font/latin/o-double-acute-small.png rename to resources/fonts/latin/o-double-acute-small.png diff --git a/resources/g2/font/latin/o-double-acute-tiny.png b/resources/fonts/latin/o-double-acute-tiny.png similarity index 100% rename from resources/g2/font/latin/o-double-acute-tiny.png rename to resources/fonts/latin/o-double-acute-tiny.png diff --git a/resources/g2/font/latin/o-double-acute-uc-bold.png b/resources/fonts/latin/o-double-acute-uc-bold.png similarity index 100% rename from resources/g2/font/latin/o-double-acute-uc-bold.png rename to resources/fonts/latin/o-double-acute-uc-bold.png diff --git a/resources/g2/font/latin/o-double-acute-uc-small.png b/resources/fonts/latin/o-double-acute-uc-small.png similarity index 100% rename from resources/g2/font/latin/o-double-acute-uc-small.png rename to resources/fonts/latin/o-double-acute-uc-small.png diff --git a/resources/g2/font/latin/o-double-acute-uc-tiny.png b/resources/fonts/latin/o-double-acute-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/o-double-acute-uc-tiny.png rename to resources/fonts/latin/o-double-acute-uc-tiny.png diff --git a/resources/g2/font/latin/o-stroke-bold.png b/resources/fonts/latin/o-stroke-bold.png similarity index 100% rename from resources/g2/font/latin/o-stroke-bold.png rename to resources/fonts/latin/o-stroke-bold.png diff --git a/resources/g2/font/latin/o-stroke-small.png b/resources/fonts/latin/o-stroke-small.png similarity index 100% rename from resources/g2/font/latin/o-stroke-small.png rename to resources/fonts/latin/o-stroke-small.png diff --git a/resources/g2/font/latin/o-stroke-tiny.png b/resources/fonts/latin/o-stroke-tiny.png similarity index 100% rename from resources/g2/font/latin/o-stroke-tiny.png rename to resources/fonts/latin/o-stroke-tiny.png diff --git a/resources/g2/font/latin/o-stroke-uc-bold.png b/resources/fonts/latin/o-stroke-uc-bold.png similarity index 100% rename from resources/g2/font/latin/o-stroke-uc-bold.png rename to resources/fonts/latin/o-stroke-uc-bold.png diff --git a/resources/g2/font/latin/o-stroke-uc-small.png b/resources/fonts/latin/o-stroke-uc-small.png similarity index 100% rename from resources/g2/font/latin/o-stroke-uc-small.png rename to resources/fonts/latin/o-stroke-uc-small.png diff --git a/resources/g2/font/latin/o-stroke-uc-tiny.png b/resources/fonts/latin/o-stroke-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/o-stroke-uc-tiny.png rename to resources/fonts/latin/o-stroke-uc-tiny.png diff --git a/resources/g2/font/latin/oe-bold.png b/resources/fonts/latin/oe-bold.png similarity index 100% rename from resources/g2/font/latin/oe-bold.png rename to resources/fonts/latin/oe-bold.png diff --git a/resources/g2/font/latin/oe-small.png b/resources/fonts/latin/oe-small.png similarity index 100% rename from resources/g2/font/latin/oe-small.png rename to resources/fonts/latin/oe-small.png diff --git a/resources/g2/font/latin/oe-tiny.png b/resources/fonts/latin/oe-tiny.png similarity index 100% rename from resources/g2/font/latin/oe-tiny.png rename to resources/fonts/latin/oe-tiny.png diff --git a/resources/g2/font/latin/oe-uc-bold.png b/resources/fonts/latin/oe-uc-bold.png similarity index 100% rename from resources/g2/font/latin/oe-uc-bold.png rename to resources/fonts/latin/oe-uc-bold.png diff --git a/resources/g2/font/latin/oe-uc-small.png b/resources/fonts/latin/oe-uc-small.png similarity index 100% rename from resources/g2/font/latin/oe-uc-small.png rename to resources/fonts/latin/oe-uc-small.png diff --git a/resources/g2/font/latin/oe-uc-tiny.png b/resources/fonts/latin/oe-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/oe-uc-tiny.png rename to resources/fonts/latin/oe-uc-tiny.png diff --git a/resources/g2/font/latin/r-caron-bold.png b/resources/fonts/latin/r-caron-bold.png similarity index 100% rename from resources/g2/font/latin/r-caron-bold.png rename to resources/fonts/latin/r-caron-bold.png diff --git a/resources/g2/font/latin/r-caron-small.png b/resources/fonts/latin/r-caron-small.png similarity index 100% rename from resources/g2/font/latin/r-caron-small.png rename to resources/fonts/latin/r-caron-small.png diff --git a/resources/g2/font/latin/r-caron-tiny.png b/resources/fonts/latin/r-caron-tiny.png similarity index 100% rename from resources/g2/font/latin/r-caron-tiny.png rename to resources/fonts/latin/r-caron-tiny.png diff --git a/resources/g2/font/latin/r-caron-uc-bold.png b/resources/fonts/latin/r-caron-uc-bold.png similarity index 100% rename from resources/g2/font/latin/r-caron-uc-bold.png rename to resources/fonts/latin/r-caron-uc-bold.png diff --git a/resources/g2/font/latin/r-caron-uc-small.png b/resources/fonts/latin/r-caron-uc-small.png similarity index 100% rename from resources/g2/font/latin/r-caron-uc-small.png rename to resources/fonts/latin/r-caron-uc-small.png diff --git a/resources/g2/font/latin/r-caron-uc-tiny.png b/resources/fonts/latin/r-caron-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/r-caron-uc-tiny.png rename to resources/fonts/latin/r-caron-uc-tiny.png diff --git a/resources/g2/font/latin/s-caron-bold.png b/resources/fonts/latin/s-caron-bold.png similarity index 100% rename from resources/g2/font/latin/s-caron-bold.png rename to resources/fonts/latin/s-caron-bold.png diff --git a/resources/g2/font/latin/s-caron-small.png b/resources/fonts/latin/s-caron-small.png similarity index 100% rename from resources/g2/font/latin/s-caron-small.png rename to resources/fonts/latin/s-caron-small.png diff --git a/resources/g2/font/latin/s-caron-tiny.png b/resources/fonts/latin/s-caron-tiny.png similarity index 100% rename from resources/g2/font/latin/s-caron-tiny.png rename to resources/fonts/latin/s-caron-tiny.png diff --git a/resources/g2/font/latin/s-caron-uc-bold.png b/resources/fonts/latin/s-caron-uc-bold.png similarity index 100% rename from resources/g2/font/latin/s-caron-uc-bold.png rename to resources/fonts/latin/s-caron-uc-bold.png diff --git a/resources/g2/font/latin/s-caron-uc-small.png b/resources/fonts/latin/s-caron-uc-small.png similarity index 100% rename from resources/g2/font/latin/s-caron-uc-small.png rename to resources/fonts/latin/s-caron-uc-small.png diff --git a/resources/g2/font/latin/s-caron-uc-tiny.png b/resources/fonts/latin/s-caron-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/s-caron-uc-tiny.png rename to resources/fonts/latin/s-caron-uc-tiny.png diff --git a/resources/g2/font/latin/s-cedilla-bold.png b/resources/fonts/latin/s-cedilla-bold.png similarity index 100% rename from resources/g2/font/latin/s-cedilla-bold.png rename to resources/fonts/latin/s-cedilla-bold.png diff --git a/resources/g2/font/latin/s-cedilla-small.png b/resources/fonts/latin/s-cedilla-small.png similarity index 100% rename from resources/g2/font/latin/s-cedilla-small.png rename to resources/fonts/latin/s-cedilla-small.png diff --git a/resources/g2/font/latin/s-cedilla-tiny.png b/resources/fonts/latin/s-cedilla-tiny.png similarity index 100% rename from resources/g2/font/latin/s-cedilla-tiny.png rename to resources/fonts/latin/s-cedilla-tiny.png diff --git a/resources/g2/font/latin/s-cedilla-uc-bold.png b/resources/fonts/latin/s-cedilla-uc-bold.png similarity index 100% rename from resources/g2/font/latin/s-cedilla-uc-bold.png rename to resources/fonts/latin/s-cedilla-uc-bold.png diff --git a/resources/g2/font/latin/s-cedilla-uc-small.png b/resources/fonts/latin/s-cedilla-uc-small.png similarity index 100% rename from resources/g2/font/latin/s-cedilla-uc-small.png rename to resources/fonts/latin/s-cedilla-uc-small.png diff --git a/resources/g2/font/latin/s-cedilla-uc-tiny.png b/resources/fonts/latin/s-cedilla-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/s-cedilla-uc-tiny.png rename to resources/fonts/latin/s-cedilla-uc-tiny.png diff --git a/resources/g2/font/latin/s-circumflex-bold.png b/resources/fonts/latin/s-circumflex-bold.png similarity index 100% rename from resources/g2/font/latin/s-circumflex-bold.png rename to resources/fonts/latin/s-circumflex-bold.png diff --git a/resources/g2/font/latin/s-circumflex-small.png b/resources/fonts/latin/s-circumflex-small.png similarity index 100% rename from resources/g2/font/latin/s-circumflex-small.png rename to resources/fonts/latin/s-circumflex-small.png diff --git a/resources/g2/font/latin/s-circumflex-tiny.png b/resources/fonts/latin/s-circumflex-tiny.png similarity index 100% rename from resources/g2/font/latin/s-circumflex-tiny.png rename to resources/fonts/latin/s-circumflex-tiny.png diff --git a/resources/g2/font/latin/s-circumflex-uc-bold.png b/resources/fonts/latin/s-circumflex-uc-bold.png similarity index 100% rename from resources/g2/font/latin/s-circumflex-uc-bold.png rename to resources/fonts/latin/s-circumflex-uc-bold.png diff --git a/resources/g2/font/latin/s-circumflex-uc-small.png b/resources/fonts/latin/s-circumflex-uc-small.png similarity index 100% rename from resources/g2/font/latin/s-circumflex-uc-small.png rename to resources/fonts/latin/s-circumflex-uc-small.png diff --git a/resources/g2/font/latin/s-circumflex-uc-tiny.png b/resources/fonts/latin/s-circumflex-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/s-circumflex-uc-tiny.png rename to resources/fonts/latin/s-circumflex-uc-tiny.png diff --git a/resources/g2/font/latin/t-caron-bold.png b/resources/fonts/latin/t-caron-bold.png similarity index 100% rename from resources/g2/font/latin/t-caron-bold.png rename to resources/fonts/latin/t-caron-bold.png diff --git a/resources/g2/font/latin/t-caron-small.png b/resources/fonts/latin/t-caron-small.png similarity index 100% rename from resources/g2/font/latin/t-caron-small.png rename to resources/fonts/latin/t-caron-small.png diff --git a/resources/g2/font/latin/t-caron-tiny.png b/resources/fonts/latin/t-caron-tiny.png similarity index 100% rename from resources/g2/font/latin/t-caron-tiny.png rename to resources/fonts/latin/t-caron-tiny.png diff --git a/resources/g2/font/latin/t-caron-uc-bold.png b/resources/fonts/latin/t-caron-uc-bold.png similarity index 100% rename from resources/g2/font/latin/t-caron-uc-bold.png rename to resources/fonts/latin/t-caron-uc-bold.png diff --git a/resources/g2/font/latin/t-caron-uc-small.png b/resources/fonts/latin/t-caron-uc-small.png similarity index 100% rename from resources/g2/font/latin/t-caron-uc-small.png rename to resources/fonts/latin/t-caron-uc-small.png diff --git a/resources/g2/font/latin/t-caron-uc-tiny.png b/resources/fonts/latin/t-caron-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/t-caron-uc-tiny.png rename to resources/fonts/latin/t-caron-uc-tiny.png diff --git a/resources/g2/font/latin/t-comma-bold.png b/resources/fonts/latin/t-comma-bold.png similarity index 100% rename from resources/g2/font/latin/t-comma-bold.png rename to resources/fonts/latin/t-comma-bold.png diff --git a/resources/g2/font/latin/t-comma-small.png b/resources/fonts/latin/t-comma-small.png similarity index 100% rename from resources/g2/font/latin/t-comma-small.png rename to resources/fonts/latin/t-comma-small.png diff --git a/resources/g2/font/latin/t-comma-tiny.png b/resources/fonts/latin/t-comma-tiny.png similarity index 100% rename from resources/g2/font/latin/t-comma-tiny.png rename to resources/fonts/latin/t-comma-tiny.png diff --git a/resources/g2/font/latin/t-comma-uc-bold.png b/resources/fonts/latin/t-comma-uc-bold.png similarity index 100% rename from resources/g2/font/latin/t-comma-uc-bold.png rename to resources/fonts/latin/t-comma-uc-bold.png diff --git a/resources/g2/font/latin/t-comma-uc-small.png b/resources/fonts/latin/t-comma-uc-small.png similarity index 100% rename from resources/g2/font/latin/t-comma-uc-small.png rename to resources/fonts/latin/t-comma-uc-small.png diff --git a/resources/g2/font/latin/t-comma-uc-tiny.png b/resources/fonts/latin/t-comma-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/t-comma-uc-tiny.png rename to resources/fonts/latin/t-comma-uc-tiny.png diff --git a/resources/g2/font/latin/u-breve-bold.png b/resources/fonts/latin/u-breve-bold.png similarity index 100% rename from resources/g2/font/latin/u-breve-bold.png rename to resources/fonts/latin/u-breve-bold.png diff --git a/resources/g2/font/latin/u-breve-small.png b/resources/fonts/latin/u-breve-small.png similarity index 100% rename from resources/g2/font/latin/u-breve-small.png rename to resources/fonts/latin/u-breve-small.png diff --git a/resources/g2/font/latin/u-breve-tiny.png b/resources/fonts/latin/u-breve-tiny.png similarity index 100% rename from resources/g2/font/latin/u-breve-tiny.png rename to resources/fonts/latin/u-breve-tiny.png diff --git a/resources/g2/font/latin/u-breve-uc-bold.png b/resources/fonts/latin/u-breve-uc-bold.png similarity index 100% rename from resources/g2/font/latin/u-breve-uc-bold.png rename to resources/fonts/latin/u-breve-uc-bold.png diff --git a/resources/g2/font/latin/u-breve-uc-small.png b/resources/fonts/latin/u-breve-uc-small.png similarity index 100% rename from resources/g2/font/latin/u-breve-uc-small.png rename to resources/fonts/latin/u-breve-uc-small.png diff --git a/resources/g2/font/latin/u-breve-uc-tiny.png b/resources/fonts/latin/u-breve-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/u-breve-uc-tiny.png rename to resources/fonts/latin/u-breve-uc-tiny.png diff --git a/resources/g2/font/latin/u-double-acute-bold.png b/resources/fonts/latin/u-double-acute-bold.png similarity index 100% rename from resources/g2/font/latin/u-double-acute-bold.png rename to resources/fonts/latin/u-double-acute-bold.png diff --git a/resources/g2/font/latin/u-double-acute-small.png b/resources/fonts/latin/u-double-acute-small.png similarity index 100% rename from resources/g2/font/latin/u-double-acute-small.png rename to resources/fonts/latin/u-double-acute-small.png diff --git a/resources/g2/font/latin/u-double-acute-tiny.png b/resources/fonts/latin/u-double-acute-tiny.png similarity index 100% rename from resources/g2/font/latin/u-double-acute-tiny.png rename to resources/fonts/latin/u-double-acute-tiny.png diff --git a/resources/g2/font/latin/u-double-acute-uc-bold.png b/resources/fonts/latin/u-double-acute-uc-bold.png similarity index 100% rename from resources/g2/font/latin/u-double-acute-uc-bold.png rename to resources/fonts/latin/u-double-acute-uc-bold.png diff --git a/resources/g2/font/latin/u-double-acute-uc-small.png b/resources/fonts/latin/u-double-acute-uc-small.png similarity index 100% rename from resources/g2/font/latin/u-double-acute-uc-small.png rename to resources/fonts/latin/u-double-acute-uc-small.png diff --git a/resources/g2/font/latin/u-double-acute-uc-tiny.png b/resources/fonts/latin/u-double-acute-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/u-double-acute-uc-tiny.png rename to resources/fonts/latin/u-double-acute-uc-tiny.png diff --git a/resources/g2/font/latin/u-ring-bold.png b/resources/fonts/latin/u-ring-bold.png similarity index 100% rename from resources/g2/font/latin/u-ring-bold.png rename to resources/fonts/latin/u-ring-bold.png diff --git a/resources/g2/font/latin/u-ring-small.png b/resources/fonts/latin/u-ring-small.png similarity index 100% rename from resources/g2/font/latin/u-ring-small.png rename to resources/fonts/latin/u-ring-small.png diff --git a/resources/g2/font/latin/u-ring-tiny.png b/resources/fonts/latin/u-ring-tiny.png similarity index 100% rename from resources/g2/font/latin/u-ring-tiny.png rename to resources/fonts/latin/u-ring-tiny.png diff --git a/resources/g2/font/latin/u-ring-uc-bold.png b/resources/fonts/latin/u-ring-uc-bold.png similarity index 100% rename from resources/g2/font/latin/u-ring-uc-bold.png rename to resources/fonts/latin/u-ring-uc-bold.png diff --git a/resources/g2/font/latin/u-ring-uc-small.png b/resources/fonts/latin/u-ring-uc-small.png similarity index 100% rename from resources/g2/font/latin/u-ring-uc-small.png rename to resources/fonts/latin/u-ring-uc-small.png diff --git a/resources/g2/font/latin/u-ring-uc-tiny.png b/resources/fonts/latin/u-ring-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/u-ring-uc-tiny.png rename to resources/fonts/latin/u-ring-uc-tiny.png diff --git a/resources/g2/font/latin/w-circumflex-bold.png b/resources/fonts/latin/w-circumflex-bold.png similarity index 100% rename from resources/g2/font/latin/w-circumflex-bold.png rename to resources/fonts/latin/w-circumflex-bold.png diff --git a/resources/g2/font/latin/w-circumflex-small.png b/resources/fonts/latin/w-circumflex-small.png similarity index 100% rename from resources/g2/font/latin/w-circumflex-small.png rename to resources/fonts/latin/w-circumflex-small.png diff --git a/resources/g2/font/latin/w-circumflex-tiny.png b/resources/fonts/latin/w-circumflex-tiny.png similarity index 100% rename from resources/g2/font/latin/w-circumflex-tiny.png rename to resources/fonts/latin/w-circumflex-tiny.png diff --git a/resources/g2/font/latin/w-circumflex-uc-bold.png b/resources/fonts/latin/w-circumflex-uc-bold.png similarity index 100% rename from resources/g2/font/latin/w-circumflex-uc-bold.png rename to resources/fonts/latin/w-circumflex-uc-bold.png diff --git a/resources/g2/font/latin/w-circumflex-uc-small.png b/resources/fonts/latin/w-circumflex-uc-small.png similarity index 100% rename from resources/g2/font/latin/w-circumflex-uc-small.png rename to resources/fonts/latin/w-circumflex-uc-small.png diff --git a/resources/g2/font/latin/w-circumflex-uc-tiny.png b/resources/fonts/latin/w-circumflex-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/w-circumflex-uc-tiny.png rename to resources/fonts/latin/w-circumflex-uc-tiny.png diff --git a/resources/g2/font/latin/y-acute-bold.png b/resources/fonts/latin/y-acute-bold.png similarity index 100% rename from resources/g2/font/latin/y-acute-bold.png rename to resources/fonts/latin/y-acute-bold.png diff --git a/resources/g2/font/latin/y-acute-small.png b/resources/fonts/latin/y-acute-small.png similarity index 100% rename from resources/g2/font/latin/y-acute-small.png rename to resources/fonts/latin/y-acute-small.png diff --git a/resources/g2/font/latin/y-acute-tiny.png b/resources/fonts/latin/y-acute-tiny.png similarity index 100% rename from resources/g2/font/latin/y-acute-tiny.png rename to resources/fonts/latin/y-acute-tiny.png diff --git a/resources/g2/font/latin/y-acute-uc-bold.png b/resources/fonts/latin/y-acute-uc-bold.png similarity index 100% rename from resources/g2/font/latin/y-acute-uc-bold.png rename to resources/fonts/latin/y-acute-uc-bold.png diff --git a/resources/g2/font/latin/y-acute-uc-small.png b/resources/fonts/latin/y-acute-uc-small.png similarity index 100% rename from resources/g2/font/latin/y-acute-uc-small.png rename to resources/fonts/latin/y-acute-uc-small.png diff --git a/resources/g2/font/latin/y-acute-uc-tiny.png b/resources/fonts/latin/y-acute-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/y-acute-uc-tiny.png rename to resources/fonts/latin/y-acute-uc-tiny.png diff --git a/resources/g2/font/latin/y-circumflex-bold.png b/resources/fonts/latin/y-circumflex-bold.png similarity index 100% rename from resources/g2/font/latin/y-circumflex-bold.png rename to resources/fonts/latin/y-circumflex-bold.png diff --git a/resources/g2/font/latin/y-circumflex-small.png b/resources/fonts/latin/y-circumflex-small.png similarity index 100% rename from resources/g2/font/latin/y-circumflex-small.png rename to resources/fonts/latin/y-circumflex-small.png diff --git a/resources/g2/font/latin/y-circumflex-tiny.png b/resources/fonts/latin/y-circumflex-tiny.png similarity index 100% rename from resources/g2/font/latin/y-circumflex-tiny.png rename to resources/fonts/latin/y-circumflex-tiny.png diff --git a/resources/g2/font/latin/y-circumflex-uc-bold.png b/resources/fonts/latin/y-circumflex-uc-bold.png similarity index 100% rename from resources/g2/font/latin/y-circumflex-uc-bold.png rename to resources/fonts/latin/y-circumflex-uc-bold.png diff --git a/resources/g2/font/latin/y-circumflex-uc-small.png b/resources/fonts/latin/y-circumflex-uc-small.png similarity index 100% rename from resources/g2/font/latin/y-circumflex-uc-small.png rename to resources/fonts/latin/y-circumflex-uc-small.png diff --git a/resources/g2/font/latin/y-circumflex-uc-tiny.png b/resources/fonts/latin/y-circumflex-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/y-circumflex-uc-tiny.png rename to resources/fonts/latin/y-circumflex-uc-tiny.png diff --git a/resources/g2/font/latin/z-caron-bold.png b/resources/fonts/latin/z-caron-bold.png similarity index 100% rename from resources/g2/font/latin/z-caron-bold.png rename to resources/fonts/latin/z-caron-bold.png diff --git a/resources/g2/font/latin/z-caron-small.png b/resources/fonts/latin/z-caron-small.png similarity index 100% rename from resources/g2/font/latin/z-caron-small.png rename to resources/fonts/latin/z-caron-small.png diff --git a/resources/g2/font/latin/z-caron-tiny.png b/resources/fonts/latin/z-caron-tiny.png similarity index 100% rename from resources/g2/font/latin/z-caron-tiny.png rename to resources/fonts/latin/z-caron-tiny.png diff --git a/resources/g2/font/latin/z-caron-uc-bold.png b/resources/fonts/latin/z-caron-uc-bold.png similarity index 100% rename from resources/g2/font/latin/z-caron-uc-bold.png rename to resources/fonts/latin/z-caron-uc-bold.png diff --git a/resources/g2/font/latin/z-caron-uc-small.png b/resources/fonts/latin/z-caron-uc-small.png similarity index 100% rename from resources/g2/font/latin/z-caron-uc-small.png rename to resources/fonts/latin/z-caron-uc-small.png diff --git a/resources/g2/font/latin/z-caron-uc-tiny.png b/resources/fonts/latin/z-caron-uc-tiny.png similarity index 100% rename from resources/g2/font/latin/z-caron-uc-tiny.png rename to resources/fonts/latin/z-caron-uc-tiny.png diff --git a/resources/g2/font/left-brace-bold.png b/resources/fonts/left-brace-bold.png similarity index 100% rename from resources/g2/font/left-brace-bold.png rename to resources/fonts/left-brace-bold.png diff --git a/resources/g2/font/left-brace-small.png b/resources/fonts/left-brace-small.png similarity index 100% rename from resources/g2/font/left-brace-small.png rename to resources/fonts/left-brace-small.png diff --git a/resources/g2/font/left-brace-tiny.png b/resources/fonts/left-brace-tiny.png similarity index 100% rename from resources/g2/font/left-brace-tiny.png rename to resources/fonts/left-brace-tiny.png diff --git a/resources/g2/font/right-brace-bold.png b/resources/fonts/right-brace-bold.png similarity index 100% rename from resources/g2/font/right-brace-bold.png rename to resources/fonts/right-brace-bold.png diff --git a/resources/g2/font/right-brace-small.png b/resources/fonts/right-brace-small.png similarity index 100% rename from resources/g2/font/right-brace-small.png rename to resources/fonts/right-brace-small.png diff --git a/resources/g2/font/right-brace-tiny.png b/resources/fonts/right-brace-tiny.png similarity index 100% rename from resources/g2/font/right-brace-tiny.png rename to resources/fonts/right-brace-tiny.png diff --git a/resources/g2/font/rouble-bold.png b/resources/fonts/rouble-bold.png similarity index 100% rename from resources/g2/font/rouble-bold.png rename to resources/fonts/rouble-bold.png diff --git a/resources/g2/font/rouble-small.png b/resources/fonts/rouble-small.png similarity index 100% rename from resources/g2/font/rouble-small.png rename to resources/fonts/rouble-small.png diff --git a/resources/g2/font/rouble-tiny.png b/resources/fonts/rouble-tiny.png similarity index 100% rename from resources/g2/font/rouble-tiny.png rename to resources/fonts/rouble-tiny.png diff --git a/resources/fonts/sprites.json b/resources/fonts/sprites.json new file mode 100644 index 0000000000..aef7256fbf --- /dev/null +++ b/resources/fonts/sprites.json @@ -0,0 +1,1962 @@ +[ + { + "path": "latin/ae-uc-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/ae-small.png", + "y": 2, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/o-stroke-uc-small.png", + "x": -1, + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/o-stroke-small.png", + "y": 2, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1028-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1041-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1043-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1044-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1046-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1047-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1048-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1049-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1051-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1055-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1059-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1060-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1062-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1063-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1064-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1065-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1066-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1067-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1068-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1069-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1070-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1071-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1073-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1074-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1075-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1076-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1078-small.png", + "y": 2, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1079-small.png", + "y": 2, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1080-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1081-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1082-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1083-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1084-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1085-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1087-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1090-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1092-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1094-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1095-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1096-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1097-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1099-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1100-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1101-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1102-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1103-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1108-small.png", + "y": 2, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1168-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1169-small.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "german-openquotes-small.png", + "y": 6, + "palette": "keep", + "format": "raw" + }, + { + "path": "guilder-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/g-breve-uc-small.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/i-with-dot-uc-small.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/s-cedilla-uc-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/g-breve-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/i-without-dot-small.png", + "y": 2, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/s-cedilla-small.png", + "y": 2, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/interpunct-small.png", + "y": 3, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/a-breve-uc-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/t-comma-uc-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/t-comma-small.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "ellipsis-small.png", + "y": 6, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/c-caron-uc-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/c-caron-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/y-acute-uc-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/y-acute-small.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/o-double-acute-uc-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/o-double-acute-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/oe-uc-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/oe-small.png", + "y": 2, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/u-double-acute-uc-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/u-double-acute-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/d-caron-uc-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/d-caron-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/e-caron-uc-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/e-caron-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/n-caron-uc-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/n-caron-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/r-caron-uc-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/r-caron-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/s-caron-uc-small.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/s-caron-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/t-caron-uc-small.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/t-caron-small.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/u-ring-uc-small.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/u-ring-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/w-circumflex-uc-small.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/w-circumflex-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/y-circumflex-uc-small.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/y-circumflex-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/z-caron-uc-small.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/z-caron-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "rouble-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/j-small.png", + "x": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/l-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/c-circumflex-uc-small.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/c-circumflex-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/g-circumflex-uc-small.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/g-circumflex-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/h-circumflex-uc-small.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/h-circumflex-small.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/j-circumflex-uc-small.png", + "x": -1, + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/j-circumflex-small.png", + "x": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/s-circumflex-uc-small.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/s-circumflex-small.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/u-breve-uc-small.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/u-breve-small.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "left-brace-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "vertical-bar-small.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "right-brace-small.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "tilde-small.png", + "y": 3, + "palette": "keep", + "format": "raw" + }, + { + "path": "eye.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/ae-uc-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/ae-bold.png", + "y": 2, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/o-stroke-uc-bold.png", + "x": -1, + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/o-stroke-bold.png", + "x": 0, + "y": 2, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1028-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1041-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1043-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1044-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1046-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1047-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1048-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1049-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1051-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1055-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1059-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1060-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1062-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1063-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1064-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1065-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1066-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1067-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1068-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1069-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1070-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1071-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1073-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1074-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1075-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1076-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1078-bold.png", + "y": 2, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1079-bold.png", + "y": 2, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1080-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1081-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1082-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1083-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1084-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1085-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1087-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1090-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1092-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1094-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1095-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1096-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1097-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1099-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1100-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1101-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1102-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1103-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1108-bold.png", + "y": 2, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1168-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1169-bold.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "german-openquotes-bold.png", + "y": 5, + "palette": "keep", + "format": "raw" + }, + { + "path": "guilder-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/g-breve-uc-bold.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/i-with-dot-uc-bold.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/s-cedilla-uc-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/g-breve-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/i-without-dot-bold.png", + "y": 2, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/s-cedilla-bold.png", + "y": 2, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/interpunct-bold.png", + "y": 3, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/a-breve-uc-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/t-comma-uc-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/t-comma-bold.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "ellipsis-bold.png", + "y": 6, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/c-caron-uc-bold.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/c-caron-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/y-acute-uc-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/y-acute-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/o-double-acute-uc-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/o-double-acute-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/oe-uc-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/oe-bold.png", + "y": 2, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/u-double-acute-uc-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/u-double-acute-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/d-caron-uc-bold.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/d-caron-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/e-caron-uc-bold.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/e-caron-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/n-caron-uc-bold.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/n-caron-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/r-caron-uc-bold.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/r-caron-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/s-caron-uc-bold.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/s-caron-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/t-caron-uc-bold.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/t-caron-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/u-ring-uc-bold.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/u-ring-bold.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/w-circumflex-uc-bold.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/w-circumflex-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/y-circumflex-uc-bold.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/y-circumflex-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/z-caron-uc-bold.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/z-caron-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "rouble-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/j-bold.png", + "x": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/l-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/c-circumflex-uc-bold.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/c-circumflex-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/g-circumflex-uc-bold.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/g-circumflex-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/h-circumflex-uc-bold.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/h-circumflex-bold.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/j-circumflex-uc-bold.png", + "x": -1, + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/j-circumflex-bold.png", + "x": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/s-circumflex-uc-bold.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/s-circumflex-bold.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/u-breve-uc-bold.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/u-breve-bold.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "left-brace-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "vertical-bar-bold.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "right-brace-bold.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "tilde-bold.png", + "y": 2, + "palette": "keep", + "format": "raw" + }, + { + "path": "eye.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/ae-uc-tiny.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/ae-tiny.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/o-stroke-uc-tiny.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/o-stroke-tiny.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1028-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1041-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1043-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1044-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1046-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1047-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1048-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1049-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1051-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1055-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1059-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1060-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1062-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1063-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1064-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1065-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1066-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1067-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1068-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1069-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1070-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1071-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1073-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1074-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1075-tiny.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1076-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1078-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1079-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1080-tiny.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1081-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1082-tiny.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1083-tiny.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1084-tiny.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1085-tiny.png", + "y": 2, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1087-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1090-tiny.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1092-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1094-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1095-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1096-tiny.png", + "y": 2, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1097-tiny.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1099-tiny.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1100-tiny.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1101-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1102-tiny.png", + "y": 2, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1103-tiny.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1108-tiny.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1168-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "cyrillic/U1169-tiny.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "german-openquotes-tiny.png", + "y": 4, + "palette": "keep", + "format": "raw" + }, + { + "path": "guilder-tiny.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/g-breve-uc-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/i-with-dot-uc-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/s-cedilla-uc-tiny.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/g-breve-tiny.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/i-without-dot-tiny.png", + "y": 2, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/s-cedilla-tiny.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/interpunct-tiny.png", + "y": 2, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/a-breve-uc-tiny.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/t-comma-uc-tiny.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/t-comma-tiny.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "ellipsis-tiny.png", + "y": 4, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/c-caron-uc-tiny.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/c-caron-tiny.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/y-acute-uc-tiny.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/y-acute-tiny.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/o-double-acute-uc-tiny.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/o-double-acute-tiny.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/oe-uc-tiny.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/oe-tiny.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/u-double-acute-uc-tiny.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/u-double-acute-tiny.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/d-caron-uc-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/d-caron-tiny.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/e-caron-uc-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/e-caron-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/n-caron-uc-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/n-caron-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/r-caron-uc-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/r-caron-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/s-caron-uc-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/s-caron-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/t-caron-uc-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/t-caron-tiny.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/u-ring-uc-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/u-ring-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/w-circumflex-uc-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/w-circumflex-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/y-circumflex-uc-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/y-circumflex-tiny.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/z-caron-uc-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/z-caron-tiny.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "rouble-tiny.png", + "y": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/j-tiny.png", + "x": 0, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/l-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/c-circumflex-uc-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/c-circumflex-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/g-circumflex-uc-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/g-circumflex-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/h-circumflex-uc-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/h-circumflex-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/j-circumflex-uc-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/j-circumflex-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/s-circumflex-uc-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/s-circumflex-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/u-breve-uc-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "latin/u-breve-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "left-brace-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "vertical-bar-tiny.png", + "y": -1, + "palette": "keep", + "format": "raw" + }, + { + "path": "right-brace-tiny.png", + "palette": "keep", + "format": "raw" + }, + { + "path": "tilde-tiny.png", + "y": 1, + "palette": "keep", + "format": "raw" + }, + { + "path": "eye-tiny.png", + "y": 0, + "palette": "keep", + "format": "raw" + } +] diff --git a/resources/g2/font/tilde-bold.png b/resources/fonts/tilde-bold.png similarity index 100% rename from resources/g2/font/tilde-bold.png rename to resources/fonts/tilde-bold.png diff --git a/resources/g2/font/tilde-small.png b/resources/fonts/tilde-small.png similarity index 100% rename from resources/g2/font/tilde-small.png rename to resources/fonts/tilde-small.png diff --git a/resources/g2/font/tilde-tiny.png b/resources/fonts/tilde-tiny.png similarity index 100% rename from resources/g2/font/tilde-tiny.png rename to resources/fonts/tilde-tiny.png diff --git a/resources/g2/font/vertical-bar-bold.png b/resources/fonts/vertical-bar-bold.png similarity index 100% rename from resources/g2/font/vertical-bar-bold.png rename to resources/fonts/vertical-bar-bold.png diff --git a/resources/g2/font/vertical-bar-small.png b/resources/fonts/vertical-bar-small.png similarity index 100% rename from resources/g2/font/vertical-bar-small.png rename to resources/fonts/vertical-bar-small.png diff --git a/resources/g2/font/vertical-bar-tiny.png b/resources/fonts/vertical-bar-tiny.png similarity index 100% rename from resources/g2/font/vertical-bar-tiny.png rename to resources/fonts/vertical-bar-tiny.png diff --git a/resources/g2/sprites.json b/resources/g2/sprites.json index f0957e4624..df49504bef 100644 --- a/resources/g2/sprites.json +++ b/resources/g2/sprites.json @@ -785,1966 +785,6 @@ "x": 0, "y": 15 }, - { - "path": "font/latin/ae-uc-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/ae-small.png", - "y": 2, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/o-stroke-uc-small.png", - "x": -1, - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/o-stroke-small.png", - "y": 2, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1028-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1041-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1043-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1044-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1046-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1047-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1048-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1049-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1051-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1055-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1059-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1060-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1062-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1063-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1064-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1065-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1066-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1067-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1068-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1069-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1070-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1071-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1073-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1074-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1075-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1076-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1078-small.png", - "y": 2, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1079-small.png", - "y": 2, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1080-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1081-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1082-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1083-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1084-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1085-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1087-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1090-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1092-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1094-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1095-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1096-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1097-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1099-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1100-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1101-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1102-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1103-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1108-small.png", - "y": 2, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1168-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1169-small.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/german-openquotes-small.png", - "y": 6, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/guilder-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/g-breve-uc-small.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/i-with-dot-uc-small.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/s-cedilla-uc-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/g-breve-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/i-without-dot-small.png", - "y": 2, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/s-cedilla-small.png", - "y": 2, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/interpunct-small.png", - "y": 3, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/a-breve-uc-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/t-comma-uc-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/t-comma-small.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/ellipsis-small.png", - "y": 6, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/c-caron-uc-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/c-caron-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/y-acute-uc-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/y-acute-small.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/o-double-acute-uc-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/o-double-acute-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/oe-uc-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/oe-small.png", - "y": 2, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/u-double-acute-uc-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/u-double-acute-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/d-caron-uc-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/d-caron-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/e-caron-uc-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/e-caron-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/n-caron-uc-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/n-caron-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/r-caron-uc-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/r-caron-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/s-caron-uc-small.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/s-caron-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/t-caron-uc-small.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/t-caron-small.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/u-ring-uc-small.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/u-ring-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/w-circumflex-uc-small.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/w-circumflex-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/y-circumflex-uc-small.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/y-circumflex-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/z-caron-uc-small.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/z-caron-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/rouble-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/j-small.png", - "x": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/l-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/c-circumflex-uc-small.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/c-circumflex-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/g-circumflex-uc-small.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/g-circumflex-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/h-circumflex-uc-small.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/h-circumflex-small.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/j-circumflex-uc-small.png", - "x": -1, - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/j-circumflex-small.png", - "x": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/s-circumflex-uc-small.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/s-circumflex-small.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/u-breve-uc-small.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/u-breve-small.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/left-brace-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/vertical-bar-small.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/right-brace-small.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/tilde-small.png", - "y": 3, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/eye.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/ae-uc-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/ae-bold.png", - "y": 2, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/o-stroke-uc-bold.png", - "x": -1, - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/o-stroke-bold.png", - "x": 0, - "y": 2, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1028-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1041-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1043-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1044-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1046-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1047-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1048-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1049-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1051-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1055-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1059-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1060-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1062-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1063-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1064-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1065-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1066-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1067-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1068-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1069-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1070-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1071-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1073-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1074-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1075-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1076-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1078-bold.png", - "y": 2, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1079-bold.png", - "y": 2, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1080-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1081-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1082-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1083-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1084-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1085-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1087-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1090-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1092-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1094-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1095-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1096-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1097-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1099-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1100-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1101-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1102-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1103-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1108-bold.png", - "y": 2, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1168-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1169-bold.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/german-openquotes-bold.png", - "y": 5, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/guilder-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/g-breve-uc-bold.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/i-with-dot-uc-bold.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/s-cedilla-uc-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/g-breve-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/i-without-dot-bold.png", - "y": 2, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/s-cedilla-bold.png", - "y": 2, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/interpunct-bold.png", - "y": 3, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/a-breve-uc-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/t-comma-uc-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/t-comma-bold.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/ellipsis-bold.png", - "y": 6, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/c-caron-uc-bold.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/c-caron-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/y-acute-uc-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/y-acute-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/o-double-acute-uc-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/o-double-acute-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/oe-uc-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/oe-bold.png", - "y": 2, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/u-double-acute-uc-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/u-double-acute-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/d-caron-uc-bold.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/d-caron-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/e-caron-uc-bold.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/e-caron-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/n-caron-uc-bold.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/n-caron-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/r-caron-uc-bold.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/r-caron-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/s-caron-uc-bold.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/s-caron-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/t-caron-uc-bold.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/t-caron-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/u-ring-uc-bold.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/u-ring-bold.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/w-circumflex-uc-bold.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/w-circumflex-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/y-circumflex-uc-bold.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/y-circumflex-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/z-caron-uc-bold.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/z-caron-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/rouble-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/j-bold.png", - "x": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/l-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/c-circumflex-uc-bold.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/c-circumflex-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/g-circumflex-uc-bold.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/g-circumflex-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/h-circumflex-uc-bold.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/h-circumflex-bold.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/j-circumflex-uc-bold.png", - "x": -1, - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/j-circumflex-bold.png", - "x": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/s-circumflex-uc-bold.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/s-circumflex-bold.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/u-breve-uc-bold.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/u-breve-bold.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/left-brace-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/vertical-bar-bold.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/right-brace-bold.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/tilde-bold.png", - "y": 2, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/eye.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/ae-uc-tiny.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/ae-tiny.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/o-stroke-uc-tiny.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/o-stroke-tiny.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1028-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1041-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1043-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1044-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1046-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1047-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1048-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1049-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1051-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1055-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1059-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1060-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1062-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1063-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1064-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1065-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1066-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1067-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1068-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1069-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1070-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1071-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1073-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1074-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1075-tiny.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1076-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1078-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1079-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1080-tiny.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1081-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1082-tiny.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1083-tiny.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1084-tiny.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1085-tiny.png", - "y": 2, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1087-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1090-tiny.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1092-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1094-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1095-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1096-tiny.png", - "y": 2, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1097-tiny.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1099-tiny.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1100-tiny.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1101-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1102-tiny.png", - "y": 2, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1103-tiny.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1108-tiny.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1168-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/cyrillic/U1169-tiny.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/german-openquotes-tiny.png", - "y": 4, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/guilder-tiny.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/g-breve-uc-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/i-with-dot-uc-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/s-cedilla-uc-tiny.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/g-breve-tiny.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/i-without-dot-tiny.png", - "y": 2, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/s-cedilla-tiny.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/interpunct-tiny.png", - "y": 2, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/a-breve-uc-tiny.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/t-comma-uc-tiny.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/t-comma-tiny.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/ellipsis-tiny.png", - "y": 4, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/c-caron-uc-tiny.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/c-caron-tiny.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/y-acute-uc-tiny.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/y-acute-tiny.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/o-double-acute-uc-tiny.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/o-double-acute-tiny.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/oe-uc-tiny.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/oe-tiny.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/u-double-acute-uc-tiny.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/u-double-acute-tiny.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/d-caron-uc-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/d-caron-tiny.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/e-caron-uc-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/e-caron-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/n-caron-uc-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/n-caron-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/r-caron-uc-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/r-caron-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/s-caron-uc-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/s-caron-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/t-caron-uc-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/t-caron-tiny.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/u-ring-uc-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/u-ring-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/w-circumflex-uc-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/w-circumflex-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/y-circumflex-uc-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/y-circumflex-tiny.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/z-caron-uc-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/z-caron-tiny.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/rouble-tiny.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/j-tiny.png", - "x": 0, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/l-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/c-circumflex-uc-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/c-circumflex-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/g-circumflex-uc-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/g-circumflex-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/h-circumflex-uc-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/h-circumflex-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/j-circumflex-uc-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/j-circumflex-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/s-circumflex-uc-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/s-circumflex-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/u-breve-uc-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/latin/u-breve-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/left-brace-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/vertical-bar-tiny.png", - "y": -1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/right-brace-tiny.png", - "palette": "keep", - "format": "raw" - }, - { - "path": "font/tilde-tiny.png", - "y": 1, - "palette": "keep", - "format": "raw" - }, - { - "path": "font/eye-tiny.png", - "y": 0, - "palette": "keep", - "format": "raw" - }, { "path": "track/junior/flat_to_steep_1.png" }, diff --git a/src/openrct2-ui/CMakeLists.txt b/src/openrct2-ui/CMakeLists.txt index f33d780dbb..cb3962043c 100644 --- a/src/openrct2-ui/CMakeLists.txt +++ b/src/openrct2-ui/CMakeLists.txt @@ -207,6 +207,10 @@ if(MACOS_BUNDLE) PUBLIC ${CMAKE_BINARY_DIR}/g2.dat ) list(APPEND BUNDLE_RESOURCES ${CMAKE_BINARY_DIR}/g2.dat) + target_sources(openrct2 + PUBLIC ${CMAKE_BINARY_DIR}/fonts.dat + ) + list(APPEND BUNDLE_RESOURCES ${CMAKE_BINARY_DIR}/fonts.dat) endif() diff --git a/src/openrct2-ui/scripting/ScImageManager.hpp b/src/openrct2-ui/scripting/ScImageManager.hpp index 2d44192219..86aeef6c66 100644 --- a/src/openrct2-ui/scripting/ScImageManager.hpp +++ b/src/openrct2-ui/scripting/ScImageManager.hpp @@ -54,6 +54,10 @@ namespace OpenRCT2::Scripting { return CreateImageIndexRange(SPR_G2_BEGIN, SPR_G2_END - SPR_G2_BEGIN); } + else if (name == "fonts") + { + return CreateImageIndexRange(SPR_FONTS_BEGIN, SPR_FONTS_END - SPR_FONTS_BEGIN); + } else if (name == "csg") { return CreateImageIndexRange(SPR_CSG_BEGIN, SPR_CSG_END - SPR_CSG_BEGIN); diff --git a/src/openrct2/Context.cpp b/src/openrct2/Context.cpp index 023f03a8ee..438699fc83 100644 --- a/src/openrct2/Context.cpp +++ b/src/openrct2/Context.cpp @@ -220,7 +220,7 @@ namespace OpenRCT2 GfxObjectCheckAllImagesFreed(); GfxUnloadCsg(); - GfxUnloadG2(); + GfxUnloadG2AndFonts(); GfxUnloadG1(); Audio::Close(); @@ -1036,7 +1036,7 @@ namespace OpenRCT2 { return false; } - GfxLoadG2(); + GfxLoadG2AndFonts(); GfxLoadCsg(); FontSpriteInitialiseCharacters(); return true; diff --git a/src/openrct2/SpriteIds.h b/src/openrct2/SpriteIds.h index 740dc59c3e..81b3c3f487 100644 --- a/src/openrct2/SpriteIds.h +++ b/src/openrct2/SpriteIds.h @@ -13,6 +13,8 @@ #include "drawing/ScrollingText.h" #include "rct1/Limits.h" +#include + enum : ImageIndex { // Used for on-demand drawing of dynamic memory @@ -880,7 +882,7 @@ enum : ImageIndex SPR_G2_PLACEHOLDER, // G2 UI Elements - // When adding UI elements to G2, insert them before fonts and give them a name in src/openrct2/scripting/IconNames.hpp + // When adding UI elements to G2, insert them before tracks and give them a name in src/openrct2/scripting/IconNames.hpp SPR_G2_LOGO, SPR_G2_TITLE, @@ -1063,151 +1065,9 @@ enum : ImageIndex SPR_G2_SELECTION_EDGE_SW, SPR_G2_SELECTION_EDGE_SE, - // G2 Characters - - SPR_G2_CHAR_BEGIN, - SPR_G2_AE_UPPER = SPR_G2_CHAR_BEGIN + 0, - SPR_G2_AE_LOWER, - SPR_G2_O_STROKE_UPPER, - SPR_G2_O_STROKE_LOWER, - - SPR_G2_CYRILLIC_UKRAINIAN_IE_UPPER, - SPR_G2_CYRILLIC_BE_UPPER, - SPR_G2_CYRILLIC_GHE_UPPER, - SPR_G2_CYRILLIC_DE_UPPER, - SPR_G2_CYRILLIC_ZHE_UPPER, - SPR_G2_CYRILLIC_ZE_UPPER, - SPR_G2_CYRILLIC_I_UPPER, - SPR_G2_CYRILLIC_SHORT_I_UPPER, - SPR_G2_CYRILLIC_EL_UPPER, - SPR_G2_CYRILLIC_PE_UPPER, - SPR_G2_CYRILLIC_U_UPPER, - SPR_G2_CYRILLIC_EF_UPPER, - SPR_G2_CYRILLIC_TSE_UPPER, - SPR_G2_CYRILLIC_CHE_UPPER, - SPR_G2_CYRILLIC_SHA_UPPER, - SPR_G2_CYRILLIC_SHCHA_UPPER, - SPR_G2_CYRILLIC_HARD_SIGN_UPPER, - SPR_G2_CYRILLIC_YERU_UPPER, - SPR_G2_CYRILLIC_SOFT_SIGN_UPPER, - SPR_G2_CYRILLIC_E_UPPER, - SPR_G2_CYRILLIC_YU_UPPER, - SPR_G2_CYRILLIC_YA_UPPER, - - SPR_G2_CYRILLIC_BE_LOWER, - SPR_G2_CYRILLIC_VE_LOWER, - SPR_G2_CYRILLIC_GHE_LOWER, - SPR_G2_CYRILLIC_DE_LOWER, - SPR_G2_CYRILLIC_ZHE_LOWER, - SPR_G2_CYRILLIC_ZE_LOWER, - SPR_G2_CYRILLIC_I_LOWER, - SPR_G2_CYRILLIC_SHORT_I_LOWER, - SPR_G2_CYRILLIC_KA_LOWER, - SPR_G2_CYRILLIC_EL_LOWER, - SPR_G2_CYRILLIC_EM_LOWER, - SPR_G2_CYRILLIC_EN_LOWER, - SPR_G2_CYRILLIC_PE_LOWER, - SPR_G2_CYRILLIC_TE_LOWER, - SPR_G2_CYRILLIC_EF_LOWER, - SPR_G2_CYRILLIC_TSE_LOWER, - SPR_G2_CYRILLIC_CHE_LOWER, - SPR_G2_CYRILLIC_SHA_LOWER, - SPR_G2_CYRILLIC_SHCHA_LOWER, - SPR_G2_CYRILLIC_YERU_LOWER, - SPR_G2_CYRILLIC_SOFT_SIGN_LOWER, - SPR_G2_CYRILLIC_E_LOWER, - SPR_G2_CYRILLIC_YU_LOWER, - SPR_G2_CYRILLIC_YA_LOWER, - SPR_G2_CYRILLIC_UKRAINIAN_IE_LOWER, - SPR_G2_CYRILLIC_GHE_UPTURN_UPPER, - SPR_G2_CYRILLIC_GHE_UPTURN_LOWER, - - SPR_G2_GERMAN_OPENQUOTES, - - SPR_G2_GUILDER_SIGN, - - SPR_G2_G_BREVE_UPPER, - SPR_G2_I_WITH_DOT_UPPER, - SPR_G2_S_CEDILLA_UPPER, - SPR_G2_G_BREVE_LOWER, - SPR_G2_I_WITHOUT_DOT_LOWER, - SPR_G2_S_CEDILLA_LOWER, - - SPR_G2_INTERPUNCT, - - SPR_G2_A_BREVE_UPPER, - SPR_G2_T_COMMA_UPPER, - SPR_G2_T_COMMA_LOWER, - - SPR_G2_ELLIPSIS, - - SPR_G2_C_CARON_UPPER, - SPR_G2_C_CARON_LOWER, - - SPR_G2_Y_ACUTE_UPPER, - SPR_G2_Y_ACUTE_LOWER, - - SPR_G2_O_DOUBLE_ACUTE_UPPER, - SPR_G2_O_DOUBLE_ACUTE_LOWER, - - SPR_G2_OE_UPPER, - SPR_G2_OE_LOWER, - - SPR_G2_U_DOUBLE_ACUTE_UPPER, - SPR_G2_U_DOUBLE_ACUTE_LOWER, - - SPR_G2_D_CARON_UPPER, - SPR_G2_D_CARON_LOWER, - SPR_G2_E_CARON_UPPER, - SPR_G2_E_CARON_LOWER, - SPR_G2_N_CARON_UPPER, - SPR_G2_N_CARON_LOWER, - SPR_G2_R_CARON_UPPER, - SPR_G2_R_CARON_LOWER, - SPR_G2_S_CARON_UPPER, - SPR_G2_S_CARON_LOWER, - SPR_G2_T_CARON_UPPER, - SPR_G2_T_CARON_LOWER, - SPR_G2_U_RING_UPPER, - SPR_G2_U_RING_LOWER, - SPR_G2_W_CIRCUMFLEX_UPPER, - SPR_G2_W_CIRCUMFLEX_LOWER, - SPR_G2_Y_CIRCUMFLEX_UPPER, - SPR_G2_Y_CIRCUMFLEX_LOWER, - SPR_G2_Z_CARON_UPPER, - SPR_G2_Z_CARON_LOWER, - - SPR_G2_ROUBLE_SIGN, - - SPR_G2_J, - SPR_G2_L, - - SPR_G2_C_CIRCUMFLEX_UPPER, - SPR_G2_C_CIRCUMFLEX_LOWER, - SPR_G2_G_CIRCUMFLEX_UPPER, - SPR_G2_G_CIRCUMFLEX_LOWER, - SPR_G2_H_CIRCUMFLEX_UPPER, - SPR_G2_H_CIRCUMFLEX_LOWER, - SPR_G2_J_CIRCUMFLEX_UPPER, - SPR_G2_J_CIRCUMFLEX_LOWER, - SPR_G2_S_CIRCUMFLEX_UPPER, - SPR_G2_S_CIRCUMFLEX_LOWER, - SPR_G2_U_BREVE_UPPER, - SPR_G2_U_BREVE_LOWER, - - SPR_G2_LEFT_BRACE, - SPR_G2_VERTICAL_BAR, - SPR_G2_RIGHT_BRACE, - SPR_G2_TILDE, - - SPR_G2_EYE, - - SPR_G2_GLYPH_COUNT = (SPR_G2_EYE - SPR_G2_CHAR_BEGIN) + 1, - SPR_G2_CHAR_END = SPR_G2_CHAR_BEGIN + SPR_G2_GLYPH_COUNT * 3, - // G2 Track additions - SPR_G2_JUNIOR_RC_BEGIN = SPR_G2_CHAR_END, + SPR_G2_JUNIOR_RC_BEGIN, SPR_JUNIOR_RC_FLAT_TO_60_DEG_UP_SW_NE = SPR_G2_JUNIOR_RC_BEGIN, SPR_JUNIOR_RC_FLAT_TO_60_DEG_UP_NW_SE, SPR_JUNIOR_RC_FLAT_TO_60_DEG_UP_NE_SW, @@ -1777,10 +1637,150 @@ enum : ImageIndex SPR_G2_END, - SPR_CSG_BEGIN = SPR_G2_END, - SPR_CSG_END = SPR_CSG_BEGIN + OpenRCT2::RCT1::Limits::kNumLLCsgEntries, + SPR_FONTS_BEGIN = SPR_G2_END, + // Sprite font characters - G2_SPRITE_COUNT = SPR_G2_END - SPR_G2_BEGIN, + SPR_FONTS_AE_UPPER = SPR_FONTS_BEGIN + 0, + SPR_FONTS_AE_LOWER, + SPR_FONTS_O_STROKE_UPPER, + SPR_FONTS_O_STROKE_LOWER, + + SPR_FONTS_CYRILLIC_UKRAINIAN_IE_UPPER, + SPR_FONTS_CYRILLIC_BE_UPPER, + SPR_FONTS_CYRILLIC_GHE_UPPER, + SPR_FONTS_CYRILLIC_DE_UPPER, + SPR_FONTS_CYRILLIC_ZHE_UPPER, + SPR_FONTS_CYRILLIC_ZE_UPPER, + SPR_FONTS_CYRILLIC_I_UPPER, + SPR_FONTS_CYRILLIC_SHORT_I_UPPER, + SPR_FONTS_CYRILLIC_EL_UPPER, + SPR_FONTS_CYRILLIC_PE_UPPER, + SPR_FONTS_CYRILLIC_U_UPPER, + SPR_FONTS_CYRILLIC_EF_UPPER, + SPR_FONTS_CYRILLIC_TSE_UPPER, + SPR_FONTS_CYRILLIC_CHE_UPPER, + SPR_FONTS_CYRILLIC_SHA_UPPER, + SPR_FONTS_CYRILLIC_SHCHA_UPPER, + SPR_FONTS_CYRILLIC_HARD_SIGN_UPPER, + SPR_FONTS_CYRILLIC_YERU_UPPER, + SPR_FONTS_CYRILLIC_SOFT_SIGN_UPPER, + SPR_FONTS_CYRILLIC_E_UPPER, + SPR_FONTS_CYRILLIC_YU_UPPER, + SPR_FONTS_CYRILLIC_YA_UPPER, + + SPR_FONTS_CYRILLIC_BE_LOWER, + SPR_FONTS_CYRILLIC_VE_LOWER, + SPR_FONTS_CYRILLIC_GHE_LOWER, + SPR_FONTS_CYRILLIC_DE_LOWER, + SPR_FONTS_CYRILLIC_ZHE_LOWER, + SPR_FONTS_CYRILLIC_ZE_LOWER, + SPR_FONTS_CYRILLIC_I_LOWER, + SPR_FONTS_CYRILLIC_SHORT_I_LOWER, + SPR_FONTS_CYRILLIC_KA_LOWER, + SPR_FONTS_CYRILLIC_EL_LOWER, + SPR_FONTS_CYRILLIC_EM_LOWER, + SPR_FONTS_CYRILLIC_EN_LOWER, + SPR_FONTS_CYRILLIC_PE_LOWER, + SPR_FONTS_CYRILLIC_TE_LOWER, + SPR_FONTS_CYRILLIC_EF_LOWER, + SPR_FONTS_CYRILLIC_TSE_LOWER, + SPR_FONTS_CYRILLIC_CHE_LOWER, + SPR_FONTS_CYRILLIC_SHA_LOWER, + SPR_FONTS_CYRILLIC_SHCHA_LOWER, + SPR_FONTS_CYRILLIC_YERU_LOWER, + SPR_FONTS_CYRILLIC_SOFT_SIGN_LOWER, + SPR_FONTS_CYRILLIC_E_LOWER, + SPR_FONTS_CYRILLIC_YU_LOWER, + SPR_FONTS_CYRILLIC_YA_LOWER, + SPR_FONTS_CYRILLIC_UKRAINIAN_IE_LOWER, + SPR_FONTS_CYRILLIC_GHE_UPTURN_UPPER, + SPR_FONTS_CYRILLIC_GHE_UPTURN_LOWER, + + SPR_FONTS_GERMAN_OPENQUOTES, + + SPR_FONTS_GUILDER_SIGN, + + SPR_FONTS_G_BREVE_UPPER, + SPR_FONTS_I_WITH_DOT_UPPER, + SPR_FONTS_S_CEDILLA_UPPER, + SPR_FONTS_G_BREVE_LOWER, + SPR_FONTS_I_WITHOUT_DOT_LOWER, + SPR_FONTS_S_CEDILLA_LOWER, + + SPR_FONTS_INTERPUNCT, + + SPR_FONTS_A_BREVE_UPPER, + SPR_FONTS_T_COMMA_UPPER, + SPR_FONTS_T_COMMA_LOWER, + + SPR_FONTS_ELLIPSIS, + + SPR_FONTS_C_CARON_UPPER, + SPR_FONTS_C_CARON_LOWER, + + SPR_FONTS_Y_ACUTE_UPPER, + SPR_FONTS_Y_ACUTE_LOWER, + + SPR_FONTS_O_DOUBLE_ACUTE_UPPER, + SPR_FONTS_O_DOUBLE_ACUTE_LOWER, + + SPR_FONTS_OE_UPPER, + SPR_FONTS_OE_LOWER, + + SPR_FONTS_U_DOUBLE_ACUTE_UPPER, + SPR_FONTS_U_DOUBLE_ACUTE_LOWER, + + SPR_FONTS_D_CARON_UPPER, + SPR_FONTS_D_CARON_LOWER, + SPR_FONTS_E_CARON_UPPER, + SPR_FONTS_E_CARON_LOWER, + SPR_FONTS_N_CARON_UPPER, + SPR_FONTS_N_CARON_LOWER, + SPR_FONTS_R_CARON_UPPER, + SPR_FONTS_R_CARON_LOWER, + SPR_FONTS_S_CARON_UPPER, + SPR_FONTS_S_CARON_LOWER, + SPR_FONTS_T_CARON_UPPER, + SPR_FONTS_T_CARON_LOWER, + SPR_FONTS_U_RING_UPPER, + SPR_FONTS_U_RING_LOWER, + SPR_FONTS_W_CIRCUMFLEX_UPPER, + SPR_FONTS_W_CIRCUMFLEX_LOWER, + SPR_FONTS_Y_CIRCUMFLEX_UPPER, + SPR_FONTS_Y_CIRCUMFLEX_LOWER, + SPR_FONTS_Z_CARON_UPPER, + SPR_FONTS_Z_CARON_LOWER, + + SPR_FONTS_ROUBLE_SIGN, + + SPR_FONTS_J, + SPR_FONTS_L, + + SPR_FONTS_C_CIRCUMFLEX_UPPER, + SPR_FONTS_C_CIRCUMFLEX_LOWER, + SPR_FONTS_G_CIRCUMFLEX_UPPER, + SPR_FONTS_G_CIRCUMFLEX_LOWER, + SPR_FONTS_H_CIRCUMFLEX_UPPER, + SPR_FONTS_H_CIRCUMFLEX_LOWER, + SPR_FONTS_J_CIRCUMFLEX_UPPER, + SPR_FONTS_J_CIRCUMFLEX_LOWER, + SPR_FONTS_S_CIRCUMFLEX_UPPER, + SPR_FONTS_S_CIRCUMFLEX_LOWER, + SPR_FONTS_U_BREVE_UPPER, + SPR_FONTS_U_BREVE_LOWER, + + SPR_FONTS_LEFT_BRACE, + SPR_FONTS_VERTICAL_BAR, + SPR_FONTS_RIGHT_BRACE, + SPR_FONTS_TILDE, + + SPR_FONTS_EYE, + + SPR_FONTS_GLYPH_COUNT = (SPR_FONTS_EYE - SPR_FONTS_BEGIN) + 1, + SPR_FONTS_END = SPR_FONTS_BEGIN + SPR_FONTS_GLYPH_COUNT * 3, + + SPR_CSG_BEGIN = SPR_FONTS_END, + SPR_CSG_END = SPR_CSG_BEGIN + OpenRCT2::RCT1::Limits::kNumLLCsgEntries, SPR_SCROLLING_TEXT_START = SPR_CSG_END, SPR_SCROLLING_TEXT_END = SPR_SCROLLING_TEXT_START + OpenRCT2::kMaxScrollingTextEntries, @@ -1789,3 +1789,6 @@ enum : ImageIndex SPR_IMAGE_LIST_BEGIN = SPR_SCROLLING_TEXT_END, SPR_IMAGE_LIST_END = SPR_IMAGE_LIST_BEGIN + SPR_IMAGE_LIST_LENGTH, }; + +constexpr size_t kG2SpriteCount = SPR_G2_END - SPR_G2_BEGIN; +constexpr size_t kFontDatSpriteCount = SPR_FONTS_END - SPR_FONTS_BEGIN; diff --git a/src/openrct2/drawing/Drawing.Sprite.cpp b/src/openrct2/drawing/Drawing.Sprite.cpp index c14fc0e9d3..acfa78724e 100644 --- a/src/openrct2/drawing/Drawing.Sprite.cpp +++ b/src/openrct2/drawing/Drawing.Sprite.cpp @@ -434,6 +434,7 @@ static void MaskMagnify( static Gx _g1 = {}; static Gx _g2 = {}; +static Gx _fonts = {}; static Gx _csg = {}; static G1Element _scrollingText[kMaxScrollingTextEntries]{}; static bool _csgLoaded = false; @@ -508,11 +509,14 @@ void GfxUnloadG1() _g1.elements.shrink_to_fit(); } -void GfxUnloadG2() +void GfxUnloadG2AndFonts() { _g2.data.reset(); _g2.elements.clear(); _g2.elements.shrink_to_fit(); + _fonts.data.reset(); + _fonts.elements.clear(); + _fonts.elements.shrink_to_fit(); } void GfxUnloadCsg() @@ -522,30 +526,30 @@ void GfxUnloadCsg() _csg.elements.shrink_to_fit(); } -bool GfxLoadG2() +static bool GfxLoadOpenRCT2Gx(std::string filename, Gx& target, size_t expectedNumItems) { - LOG_VERBOSE("GfxLoadG2()"); - + LOG_VERBOSE("GfxLoadOpenRCT2Gx(\"%s\")", filename.c_str()); auto env = GetContext()->GetPlatformEnvironment(); - std::string path = Path::Combine(env->GetDirectoryPath(DirBase::openrct2), u8"g2.dat"); + std::string path = Path::Combine(env->GetDirectoryPath(DirBase::openrct2), filename.c_str()); try { auto fs = FileStream(path, FileMode::open); - _g2.header = fs.ReadValue(); + target.header = fs.ReadValue(); // Read element headers - _g2.elements.resize(_g2.header.num_entries); - ReadAndConvertGxDat(&fs, _g2.header.num_entries, false, _g2.elements.data()); + target.elements.resize(target.header.num_entries); + ReadAndConvertGxDat(&fs, target.header.num_entries, false, target.elements.data()); // Read element data - _g2.data = fs.ReadArray(_g2.header.total_size); + target.data = fs.ReadArray(target.header.total_size); - if (_g2.header.num_entries != G2_SPRITE_COUNT) + if (target.header.num_entries != expectedNumItems) { - std::string errorMessage = "Mismatched g2.dat size.\nExpected: " + std::to_string(G2_SPRITE_COUNT) + "\nActual: " - + std::to_string(_g2.header.num_entries) + "\ng2.dat may be installed improperly.\nPath to g2.dat: " + path; + std::string errorMessage = "Mismatched " + filename + " size.\nExpected: " + std::to_string(expectedNumItems) + + "\nActual: " + std::to_string(target.header.num_entries) + "\n" + filename + + " may be installed improperly.\nPath to " + filename + ": " + path; LOG_ERROR(errorMessage.c_str()); @@ -553,40 +557,49 @@ bool GfxLoadG2() { auto uiContext = GetContext()->GetUiContext(); uiContext->ShowMessageBox(errorMessage); - uiContext->ShowMessageBox("Warning: You may experience graphical glitches if you continue. It's recommended " - "that you update g2.dat if you're seeing this message"); + uiContext->ShowMessageBox( + "Warning: You may experience graphical glitches if you continue. It's recommended " + "that you update " + + filename + " if you're seeing this message"); } } // Fix entry data offsets - for (uint32_t i = 0; i < _g2.header.num_entries; i++) + for (uint32_t i = 0; i < target.header.num_entries; i++) { - if (_g2.elements[i].offset == nullptr) + if (target.elements[i].offset == nullptr) { - _g2.elements[i].offset = _g2.data.get(); + target.elements[i].offset = target.data.get(); } else { - _g2.elements[i].offset += reinterpret_cast(_g2.data.get()); + target.elements[i].offset += reinterpret_cast(target.data.get()); } } return true; } catch (const std::exception&) { - _g2.elements.clear(); - _g2.elements.shrink_to_fit(); + target.elements.clear(); + target.elements.shrink_to_fit(); - LOG_FATAL("Unable to load g2 graphics"); + LOG_FATAL("Unable to load %s graphics", filename.c_str()); if (!gOpenRCT2Headless) { auto uiContext = GetContext()->GetUiContext(); - uiContext->ShowMessageBox("Unable to load g2.dat"); + uiContext->ShowMessageBox("Unable to load " + filename); } } return false; } +bool GfxLoadG2AndFonts() +{ + auto res1 = GfxLoadOpenRCT2Gx("g2.dat", _g2, kG2SpriteCount); + auto res2 = GfxLoadOpenRCT2Gx("fonts.dat", _fonts, kFontDatSpriteCount); + return res1 && res2; +} + bool GfxLoadCsg() { LOG_VERBOSE("GfxLoadCsg()"); @@ -1037,6 +1050,16 @@ const G1Element* GfxGetG1Element(ImageIndex image_id) LOG_WARNING("Invalid entry in g2.dat requested, idx = %u. You may have to update your g2.dat.", idx); } + else if (offset < SPR_FONTS_END) + { + size_t idx = offset - SPR_FONTS_BEGIN; + if (idx < _fonts.header.num_entries) + { + return &_fonts.elements[idx]; + } + + LOG_WARNING("Invalid entry in fonts.dat requested, idx = %u. You may have to update your fonts.dat.", idx); + } else if (offset < SPR_CSG_END) { if (IsCsgLoaded()) diff --git a/src/openrct2/drawing/Drawing.h b/src/openrct2/drawing/Drawing.h index c1837d6d95..b60f0c3f8a 100644 --- a/src/openrct2/drawing/Drawing.h +++ b/src/openrct2/drawing/Drawing.h @@ -535,10 +535,10 @@ void GfxFilterRect(RenderTarget& rt, const ScreenRect& rect, FilterPaletteID pal // sprite bool GfxLoadG1(const OpenRCT2::IPlatformEnvironment& env); -bool GfxLoadG2(); +bool GfxLoadG2AndFonts(); bool GfxLoadCsg(); void GfxUnloadG1(); -void GfxUnloadG2(); +void GfxUnloadG2AndFonts(); void GfxUnloadCsg(); const G1Element* GfxGetG1Element(const ImageId imageId); const G1Element* GfxGetG1Element(ImageIndex image_id); diff --git a/src/openrct2/drawing/Font.cpp b/src/openrct2/drawing/Font.cpp index 25bb8bd288..8a49b16ba4 100644 --- a/src/openrct2/drawing/Font.cpp +++ b/src/openrct2/drawing/Font.cpp @@ -32,7 +32,7 @@ static constexpr int32_t kSpriteFontLineHeight[FontStyleCount] = { }; static uint8_t _spriteFontCharacterWidths[FontStyleCount][kSpriteFontGlyphCount]; -static uint8_t _additionalSpriteFontCharacterWidth[FontStyleCount][SPR_G2_GLYPH_COUNT] = {}; +static uint8_t _additionalSpriteFontCharacterWidth[FontStyleCount][SPR_FONTS_GLYPH_COUNT] = {}; #ifndef DISABLE_TTF TTFFontSetDescriptor* gCurrentTTFFontSet; @@ -41,191 +41,191 @@ TTFFontSetDescriptor* gCurrentTTFFontSet; constexpr uint8_t CS_SPRITE_FONT_OFFSET = 32; static const std::unordered_map codepointOffsetMap = { - { UnicodeChar::ae_uc, SPR_G2_AE_UPPER - SPR_CHAR_START }, - { UnicodeChar::o_stroke_uc, SPR_G2_O_STROKE_UPPER - SPR_CHAR_START }, - { UnicodeChar::y_acute_uc, SPR_G2_Y_ACUTE_UPPER - SPR_CHAR_START }, - { UnicodeChar::ae, SPR_G2_AE_LOWER - SPR_CHAR_START }, - { UnicodeChar::o_stroke, SPR_G2_O_STROKE_LOWER - SPR_CHAR_START }, - { UnicodeChar::y_acute, SPR_G2_Y_ACUTE_LOWER - SPR_CHAR_START }, - { UnicodeChar::a_breve_uc, SPR_G2_A_BREVE_UPPER - SPR_CHAR_START }, + { UnicodeChar::ae_uc, SPR_FONTS_AE_UPPER - SPR_CHAR_START }, + { UnicodeChar::o_stroke_uc, SPR_FONTS_O_STROKE_UPPER - SPR_CHAR_START }, + { UnicodeChar::y_acute_uc, SPR_FONTS_Y_ACUTE_UPPER - SPR_CHAR_START }, + { UnicodeChar::ae, SPR_FONTS_AE_LOWER - SPR_CHAR_START }, + { UnicodeChar::o_stroke, SPR_FONTS_O_STROKE_LOWER - SPR_CHAR_START }, + { UnicodeChar::y_acute, SPR_FONTS_Y_ACUTE_LOWER - SPR_CHAR_START }, + { UnicodeChar::a_breve_uc, SPR_FONTS_A_BREVE_UPPER - SPR_CHAR_START }, { UnicodeChar::a_breve, 226 - CS_SPRITE_FONT_OFFSET }, // Render as â, no visual difference in the RCT font { UnicodeChar::a_ogonek_uc, CSChar::a_ogonek_uc - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::a_ogonek, CSChar::a_ogonek - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::c_acute_uc, CSChar::c_acute_uc - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::c_acute, CSChar::c_acute - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::c_caron_uc, SPR_G2_C_CARON_UPPER - SPR_CHAR_START }, - { UnicodeChar::c_caron, SPR_G2_C_CARON_LOWER - SPR_CHAR_START }, - { UnicodeChar::d_caron_uc, SPR_G2_D_CARON_UPPER - SPR_CHAR_START }, - { UnicodeChar::d_caron, SPR_G2_D_CARON_LOWER - SPR_CHAR_START }, + { UnicodeChar::c_caron_uc, SPR_FONTS_C_CARON_UPPER - SPR_CHAR_START }, + { UnicodeChar::c_caron, SPR_FONTS_C_CARON_LOWER - SPR_CHAR_START }, + { UnicodeChar::d_caron_uc, SPR_FONTS_D_CARON_UPPER - SPR_CHAR_START }, + { UnicodeChar::d_caron, SPR_FONTS_D_CARON_LOWER - SPR_CHAR_START }, { UnicodeChar::e_ogonek_uc, CSChar::e_ogonek_uc - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::e_ogonek, CSChar::e_ogonek - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::e_caron_uc, SPR_G2_E_CARON_UPPER - SPR_CHAR_START }, - { UnicodeChar::e_caron, SPR_G2_E_CARON_LOWER - SPR_CHAR_START }, - { UnicodeChar::g_breve_uc, SPR_G2_G_BREVE_UPPER - SPR_CHAR_START }, - { UnicodeChar::g_breve, SPR_G2_G_BREVE_LOWER - SPR_CHAR_START }, - { UnicodeChar::i_with_dot_uc, SPR_G2_I_WITH_DOT_UPPER - SPR_CHAR_START }, - { UnicodeChar::i_without_dot, SPR_G2_I_WITHOUT_DOT_LOWER - SPR_CHAR_START }, - { UnicodeChar::j, SPR_G2_J - SPR_CHAR_START }, - { UnicodeChar::l, SPR_G2_L - SPR_CHAR_START }, + { UnicodeChar::e_caron_uc, SPR_FONTS_E_CARON_UPPER - SPR_CHAR_START }, + { UnicodeChar::e_caron, SPR_FONTS_E_CARON_LOWER - SPR_CHAR_START }, + { UnicodeChar::g_breve_uc, SPR_FONTS_G_BREVE_UPPER - SPR_CHAR_START }, + { UnicodeChar::g_breve, SPR_FONTS_G_BREVE_LOWER - SPR_CHAR_START }, + { UnicodeChar::i_with_dot_uc, SPR_FONTS_I_WITH_DOT_UPPER - SPR_CHAR_START }, + { UnicodeChar::i_without_dot, SPR_FONTS_I_WITHOUT_DOT_LOWER - SPR_CHAR_START }, + { UnicodeChar::j, SPR_FONTS_J - SPR_CHAR_START }, + { UnicodeChar::l, SPR_FONTS_L - SPR_CHAR_START }, { UnicodeChar::l_stroke_uc, CSChar::l_stroke_uc - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::l_stroke, CSChar::l_stroke - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::n_acute_uc, CSChar::n_acute_uc - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::n_acute, CSChar::n_acute - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::n_caron_uc, SPR_G2_N_CARON_UPPER - SPR_CHAR_START }, - { UnicodeChar::n_caron, SPR_G2_N_CARON_LOWER - SPR_CHAR_START }, + { UnicodeChar::n_caron_uc, SPR_FONTS_N_CARON_UPPER - SPR_CHAR_START }, + { UnicodeChar::n_caron, SPR_FONTS_N_CARON_LOWER - SPR_CHAR_START }, { UnicodeChar::o_macron, CSChar::o_circumflex - CS_SPRITE_FONT_OFFSET }, // No visual difference - { UnicodeChar::o_double_acute_uc, SPR_G2_O_DOUBLE_ACUTE_UPPER - SPR_CHAR_START }, - { UnicodeChar::o_double_acute, SPR_G2_O_DOUBLE_ACUTE_LOWER - SPR_CHAR_START }, - { UnicodeChar::oe_uc, SPR_G2_OE_UPPER - SPR_CHAR_START }, - { UnicodeChar::oe, SPR_G2_OE_LOWER - SPR_CHAR_START }, - { UnicodeChar::r_caron_uc, SPR_G2_R_CARON_UPPER - SPR_CHAR_START }, - { UnicodeChar::r_caron, SPR_G2_R_CARON_LOWER - SPR_CHAR_START }, + { UnicodeChar::o_double_acute_uc, SPR_FONTS_O_DOUBLE_ACUTE_UPPER - SPR_CHAR_START }, + { UnicodeChar::o_double_acute, SPR_FONTS_O_DOUBLE_ACUTE_LOWER - SPR_CHAR_START }, + { UnicodeChar::oe_uc, SPR_FONTS_OE_UPPER - SPR_CHAR_START }, + { UnicodeChar::oe, SPR_FONTS_OE_LOWER - SPR_CHAR_START }, + { UnicodeChar::r_caron_uc, SPR_FONTS_R_CARON_UPPER - SPR_CHAR_START }, + { UnicodeChar::r_caron, SPR_FONTS_R_CARON_LOWER - SPR_CHAR_START }, { UnicodeChar::s_acute_uc, CSChar::s_acute_uc - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::s_acute, CSChar::s_acute - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::s_cedilla_uc, SPR_G2_S_CEDILLA_UPPER - SPR_CHAR_START }, - { UnicodeChar::s_cedilla, SPR_G2_S_CEDILLA_LOWER - SPR_CHAR_START }, - { UnicodeChar::s_caron_uc, SPR_G2_S_CARON_UPPER - SPR_CHAR_START }, - { UnicodeChar::s_caron, SPR_G2_S_CARON_LOWER - SPR_CHAR_START }, - { UnicodeChar::t_caron_uc, SPR_G2_T_CARON_UPPER - SPR_CHAR_START }, - { UnicodeChar::t_caron, SPR_G2_T_CARON_LOWER - SPR_CHAR_START }, - { UnicodeChar::u_ring_uc, SPR_G2_U_RING_UPPER - SPR_CHAR_START }, - { UnicodeChar::u_ring, SPR_G2_U_RING_LOWER - SPR_CHAR_START }, - { UnicodeChar::u_double_acute_uc, SPR_G2_U_DOUBLE_ACUTE_UPPER - SPR_CHAR_START }, - { UnicodeChar::u_double_acute, SPR_G2_U_DOUBLE_ACUTE_LOWER - SPR_CHAR_START }, - { UnicodeChar::w_circumflex_uc, SPR_G2_W_CIRCUMFLEX_UPPER - SPR_CHAR_START }, - { UnicodeChar::w_circumflex, SPR_G2_W_CIRCUMFLEX_LOWER - SPR_CHAR_START }, - { UnicodeChar::y_circumflex_uc, SPR_G2_Y_CIRCUMFLEX_UPPER - SPR_CHAR_START }, - { UnicodeChar::y_circumflex, SPR_G2_Y_CIRCUMFLEX_LOWER - SPR_CHAR_START }, + { UnicodeChar::s_cedilla_uc, SPR_FONTS_S_CEDILLA_UPPER - SPR_CHAR_START }, + { UnicodeChar::s_cedilla, SPR_FONTS_S_CEDILLA_LOWER - SPR_CHAR_START }, + { UnicodeChar::s_caron_uc, SPR_FONTS_S_CARON_UPPER - SPR_CHAR_START }, + { UnicodeChar::s_caron, SPR_FONTS_S_CARON_LOWER - SPR_CHAR_START }, + { UnicodeChar::t_caron_uc, SPR_FONTS_T_CARON_UPPER - SPR_CHAR_START }, + { UnicodeChar::t_caron, SPR_FONTS_T_CARON_LOWER - SPR_CHAR_START }, + { UnicodeChar::u_ring_uc, SPR_FONTS_U_RING_UPPER - SPR_CHAR_START }, + { UnicodeChar::u_ring, SPR_FONTS_U_RING_LOWER - SPR_CHAR_START }, + { UnicodeChar::u_double_acute_uc, SPR_FONTS_U_DOUBLE_ACUTE_UPPER - SPR_CHAR_START }, + { UnicodeChar::u_double_acute, SPR_FONTS_U_DOUBLE_ACUTE_LOWER - SPR_CHAR_START }, + { UnicodeChar::w_circumflex_uc, SPR_FONTS_W_CIRCUMFLEX_UPPER - SPR_CHAR_START }, + { UnicodeChar::w_circumflex, SPR_FONTS_W_CIRCUMFLEX_LOWER - SPR_CHAR_START }, + { UnicodeChar::y_circumflex_uc, SPR_FONTS_Y_CIRCUMFLEX_UPPER - SPR_CHAR_START }, + { UnicodeChar::y_circumflex, SPR_FONTS_Y_CIRCUMFLEX_LOWER - SPR_CHAR_START }, { UnicodeChar::z_acute_uc, CSChar::z_acute_uc - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::z_acute, CSChar::z_acute - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::z_dot_uc, CSChar::z_dot_uc - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::z_dot, CSChar::z_dot - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::z_caron_uc, SPR_G2_Z_CARON_UPPER - SPR_CHAR_START }, - { UnicodeChar::z_caron, SPR_G2_Z_CARON_LOWER - SPR_CHAR_START }, + { UnicodeChar::z_caron_uc, SPR_FONTS_Z_CARON_UPPER - SPR_CHAR_START }, + { UnicodeChar::z_caron, SPR_FONTS_Z_CARON_LOWER - SPR_CHAR_START }, { UnicodeChar::f_with_hook_uc, 'F' - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::s_comma_uc, SPR_G2_S_CEDILLA_UPPER - SPR_CHAR_START }, // No visual difference - { UnicodeChar::s_comma, SPR_G2_S_CEDILLA_LOWER - SPR_CHAR_START }, // Ditto - { UnicodeChar::t_comma_uc, SPR_G2_T_COMMA_UPPER - SPR_CHAR_START }, - { UnicodeChar::t_comma, SPR_G2_T_COMMA_LOWER - SPR_CHAR_START }, + { UnicodeChar::s_comma_uc, SPR_FONTS_S_CEDILLA_UPPER - SPR_CHAR_START }, // No visual difference + { UnicodeChar::s_comma, SPR_FONTS_S_CEDILLA_LOWER - SPR_CHAR_START }, // Ditto + { UnicodeChar::t_comma_uc, SPR_FONTS_T_COMMA_UPPER - SPR_CHAR_START }, + { UnicodeChar::t_comma, SPR_FONTS_T_COMMA_LOWER - SPR_CHAR_START }, { UnicodeChar::sharp_s_uc, 223 - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::c_circumflex_uc, SPR_G2_C_CIRCUMFLEX_UPPER - SPR_CHAR_START }, - { UnicodeChar::c_circumflex, SPR_G2_C_CIRCUMFLEX_LOWER - SPR_CHAR_START }, - { UnicodeChar::g_circumflex_uc, SPR_G2_G_CIRCUMFLEX_UPPER - SPR_CHAR_START }, - { UnicodeChar::g_circumflex, SPR_G2_G_CIRCUMFLEX_LOWER - SPR_CHAR_START }, - { UnicodeChar::h_circumflex_uc, SPR_G2_H_CIRCUMFLEX_UPPER - SPR_CHAR_START }, - { UnicodeChar::h_circumflex, SPR_G2_H_CIRCUMFLEX_LOWER - SPR_CHAR_START }, - { UnicodeChar::j_circumflex_uc, SPR_G2_J_CIRCUMFLEX_UPPER - SPR_CHAR_START }, - { UnicodeChar::j_circumflex, SPR_G2_J_CIRCUMFLEX_LOWER - SPR_CHAR_START }, - { UnicodeChar::s_circumflex_uc, SPR_G2_S_CIRCUMFLEX_UPPER - SPR_CHAR_START }, - { UnicodeChar::s_circumflex, SPR_G2_S_CIRCUMFLEX_LOWER - SPR_CHAR_START }, - { UnicodeChar::u_breve_uc, SPR_G2_U_BREVE_UPPER - SPR_CHAR_START }, - { UnicodeChar::u_breve, SPR_G2_U_BREVE_LOWER - SPR_CHAR_START }, + { UnicodeChar::c_circumflex_uc, SPR_FONTS_C_CIRCUMFLEX_UPPER - SPR_CHAR_START }, + { UnicodeChar::c_circumflex, SPR_FONTS_C_CIRCUMFLEX_LOWER - SPR_CHAR_START }, + { UnicodeChar::g_circumflex_uc, SPR_FONTS_G_CIRCUMFLEX_UPPER - SPR_CHAR_START }, + { UnicodeChar::g_circumflex, SPR_FONTS_G_CIRCUMFLEX_LOWER - SPR_CHAR_START }, + { UnicodeChar::h_circumflex_uc, SPR_FONTS_H_CIRCUMFLEX_UPPER - SPR_CHAR_START }, + { UnicodeChar::h_circumflex, SPR_FONTS_H_CIRCUMFLEX_LOWER - SPR_CHAR_START }, + { UnicodeChar::j_circumflex_uc, SPR_FONTS_J_CIRCUMFLEX_UPPER - SPR_CHAR_START }, + { UnicodeChar::j_circumflex, SPR_FONTS_J_CIRCUMFLEX_LOWER - SPR_CHAR_START }, + { UnicodeChar::s_circumflex_uc, SPR_FONTS_S_CIRCUMFLEX_UPPER - SPR_CHAR_START }, + { UnicodeChar::s_circumflex, SPR_FONTS_S_CIRCUMFLEX_LOWER - SPR_CHAR_START }, + { UnicodeChar::u_breve_uc, SPR_FONTS_U_BREVE_UPPER - SPR_CHAR_START }, + { UnicodeChar::u_breve, SPR_FONTS_U_BREVE_LOWER - SPR_CHAR_START }, // Cyrillic alphabet { UnicodeChar::cyrillic_io_uc, 203 - CS_SPRITE_FONT_OFFSET }, // Looks just like Ë - { UnicodeChar::cyrillic_ukrainian_ie_uc, SPR_G2_CYRILLIC_UKRAINIAN_IE_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_ukrainian_ie_uc, SPR_FONTS_CYRILLIC_UKRAINIAN_IE_UPPER - SPR_CHAR_START }, { UnicodeChar::cyrillic_dze_uc, 'S' - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::cyrillic_dotted_i_uc, 'I' - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::cyrillic_yi_uc, 207 - CS_SPRITE_FONT_OFFSET }, // Looks just like Ï { UnicodeChar::cyrillic_je_uc, 'J' - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::cyrillic_a_uc, 'A' - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::cyrillic_be_uc, SPR_G2_CYRILLIC_BE_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_be_uc, SPR_FONTS_CYRILLIC_BE_UPPER - SPR_CHAR_START }, { UnicodeChar::cyrillic_ve_uc, 'B' - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::cyrillic_ghe_uc, SPR_G2_CYRILLIC_GHE_UPPER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_de_uc, SPR_G2_CYRILLIC_DE_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_ghe_uc, SPR_FONTS_CYRILLIC_GHE_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_de_uc, SPR_FONTS_CYRILLIC_DE_UPPER - SPR_CHAR_START }, { UnicodeChar::cyrillic_ie_uc, 'E' - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::cyrillic_zhe_uc, SPR_G2_CYRILLIC_ZHE_UPPER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_ze_uc, SPR_G2_CYRILLIC_ZE_UPPER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_i_uc, SPR_G2_CYRILLIC_I_UPPER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_short_i_uc, SPR_G2_CYRILLIC_SHORT_I_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_zhe_uc, SPR_FONTS_CYRILLIC_ZHE_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_ze_uc, SPR_FONTS_CYRILLIC_ZE_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_i_uc, SPR_FONTS_CYRILLIC_I_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_short_i_uc, SPR_FONTS_CYRILLIC_SHORT_I_UPPER - SPR_CHAR_START }, { UnicodeChar::cyrillic_ka_uc, 'K' - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::cyrillic_el_uc, SPR_G2_CYRILLIC_EL_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_el_uc, SPR_FONTS_CYRILLIC_EL_UPPER - SPR_CHAR_START }, { UnicodeChar::cyrillic_em_uc, 'M' - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::cyrillic_en_uc, 'H' - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::cyrillic_o_uc, 'O' - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::cyrillic_pe_uc, SPR_G2_CYRILLIC_PE_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_pe_uc, SPR_FONTS_CYRILLIC_PE_UPPER - SPR_CHAR_START }, { UnicodeChar::cyrillic_er_uc, 'P' - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::cyrillic_es_uc, 'C' - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::cyrillic_te_uc, 'T' - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::cyrillic_u_uc, SPR_G2_CYRILLIC_U_UPPER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_ef_uc, SPR_G2_CYRILLIC_EF_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_u_uc, SPR_FONTS_CYRILLIC_U_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_ef_uc, SPR_FONTS_CYRILLIC_EF_UPPER - SPR_CHAR_START }, { UnicodeChar::cyrillic_ha_uc, 'X' - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::cyrillic_tse_uc, SPR_G2_CYRILLIC_TSE_UPPER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_che_uc, SPR_G2_CYRILLIC_CHE_UPPER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_sha_uc, SPR_G2_CYRILLIC_SHA_UPPER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_shcha_uc, SPR_G2_CYRILLIC_SHCHA_UPPER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_hard_sign_uc, SPR_G2_CYRILLIC_HARD_SIGN_UPPER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_yeru_uc, SPR_G2_CYRILLIC_YERU_UPPER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_soft_sign_uc, SPR_G2_CYRILLIC_SOFT_SIGN_UPPER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_e_uc, SPR_G2_CYRILLIC_E_UPPER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_yu_uc, SPR_G2_CYRILLIC_YU_UPPER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_ya_uc, SPR_G2_CYRILLIC_YA_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_tse_uc, SPR_FONTS_CYRILLIC_TSE_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_che_uc, SPR_FONTS_CYRILLIC_CHE_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_sha_uc, SPR_FONTS_CYRILLIC_SHA_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_shcha_uc, SPR_FONTS_CYRILLIC_SHCHA_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_hard_sign_uc, SPR_FONTS_CYRILLIC_HARD_SIGN_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_yeru_uc, SPR_FONTS_CYRILLIC_YERU_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_soft_sign_uc, SPR_FONTS_CYRILLIC_SOFT_SIGN_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_e_uc, SPR_FONTS_CYRILLIC_E_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_yu_uc, SPR_FONTS_CYRILLIC_YU_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_ya_uc, SPR_FONTS_CYRILLIC_YA_UPPER - SPR_CHAR_START }, { UnicodeChar::cyrillic_a, 'a' - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::cyrillic_be, SPR_G2_CYRILLIC_BE_LOWER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_ve, SPR_G2_CYRILLIC_VE_LOWER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_ghe, SPR_G2_CYRILLIC_GHE_LOWER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_de, SPR_G2_CYRILLIC_DE_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_be, SPR_FONTS_CYRILLIC_BE_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_ve, SPR_FONTS_CYRILLIC_VE_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_ghe, SPR_FONTS_CYRILLIC_GHE_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_de, SPR_FONTS_CYRILLIC_DE_LOWER - SPR_CHAR_START }, { UnicodeChar::cyrillic_ie, 'e' - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::cyrillic_zhe, SPR_G2_CYRILLIC_ZHE_LOWER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_ze, SPR_G2_CYRILLIC_ZE_LOWER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_i, SPR_G2_CYRILLIC_I_LOWER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_short_i, SPR_G2_CYRILLIC_SHORT_I_LOWER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_ka, SPR_G2_CYRILLIC_KA_LOWER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_el, SPR_G2_CYRILLIC_EL_LOWER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_em, SPR_G2_CYRILLIC_EM_LOWER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_en, SPR_G2_CYRILLIC_EN_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_zhe, SPR_FONTS_CYRILLIC_ZHE_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_ze, SPR_FONTS_CYRILLIC_ZE_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_i, SPR_FONTS_CYRILLIC_I_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_short_i, SPR_FONTS_CYRILLIC_SHORT_I_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_ka, SPR_FONTS_CYRILLIC_KA_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_el, SPR_FONTS_CYRILLIC_EL_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_em, SPR_FONTS_CYRILLIC_EM_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_en, SPR_FONTS_CYRILLIC_EN_LOWER - SPR_CHAR_START }, { UnicodeChar::cyrillic_o, 'o' - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::cyrillic_pe, SPR_G2_CYRILLIC_PE_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_pe, SPR_FONTS_CYRILLIC_PE_LOWER - SPR_CHAR_START }, { UnicodeChar::cyrillic_er, 'p' - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::cyrillic_es, 'c' - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::cyrillic_te, SPR_G2_CYRILLIC_TE_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_te, SPR_FONTS_CYRILLIC_TE_LOWER - SPR_CHAR_START }, { UnicodeChar::cyrillic_u, 'y' - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::cyrillic_ef, SPR_G2_CYRILLIC_EF_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_ef, SPR_FONTS_CYRILLIC_EF_LOWER - SPR_CHAR_START }, { UnicodeChar::cyrillic_ha, 'x' - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::cyrillic_tse, SPR_G2_CYRILLIC_TSE_LOWER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_che, SPR_G2_CYRILLIC_CHE_LOWER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_sha, SPR_G2_CYRILLIC_SHA_LOWER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_shcha, SPR_G2_CYRILLIC_SHCHA_LOWER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_hard_sign, SPR_G2_CYRILLIC_HARD_SIGN_UPPER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_yeru, SPR_G2_CYRILLIC_YERU_LOWER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_soft_sign, SPR_G2_CYRILLIC_SOFT_SIGN_LOWER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_e, SPR_G2_CYRILLIC_E_LOWER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_yu, SPR_G2_CYRILLIC_YU_LOWER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_ya, SPR_G2_CYRILLIC_YA_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_tse, SPR_FONTS_CYRILLIC_TSE_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_che, SPR_FONTS_CYRILLIC_CHE_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_sha, SPR_FONTS_CYRILLIC_SHA_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_shcha, SPR_FONTS_CYRILLIC_SHCHA_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_hard_sign, SPR_FONTS_CYRILLIC_HARD_SIGN_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_yeru, SPR_FONTS_CYRILLIC_YERU_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_soft_sign, SPR_FONTS_CYRILLIC_SOFT_SIGN_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_e, SPR_FONTS_CYRILLIC_E_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_yu, SPR_FONTS_CYRILLIC_YU_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_ya, SPR_FONTS_CYRILLIC_YA_LOWER - SPR_CHAR_START }, { UnicodeChar::cyrillic_io, 235 - CS_SPRITE_FONT_OFFSET }, // Looks just like ë - { UnicodeChar::cyrillic_ukrainian_ie, SPR_G2_CYRILLIC_UKRAINIAN_IE_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_ukrainian_ie, SPR_FONTS_CYRILLIC_UKRAINIAN_IE_LOWER - SPR_CHAR_START }, { UnicodeChar::cyrillic_dze, 's' - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::cyrillic_dotted_i, 'i' - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::cyrillic_yi, 239 - CS_SPRITE_FONT_OFFSET }, // Looks just like ï - { UnicodeChar::cyrillic_je, SPR_G2_J - SPR_CHAR_START }, - { UnicodeChar::cyrillic_ghe_upturn_uc, SPR_G2_CYRILLIC_GHE_UPTURN_UPPER - SPR_CHAR_START }, - { UnicodeChar::cyrillic_ghe_upturn, SPR_G2_CYRILLIC_GHE_UPTURN_LOWER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_je, SPR_FONTS_J - SPR_CHAR_START }, + { UnicodeChar::cyrillic_ghe_upturn_uc, SPR_FONTS_CYRILLIC_GHE_UPTURN_UPPER - SPR_CHAR_START }, + { UnicodeChar::cyrillic_ghe_upturn, SPR_FONTS_CYRILLIC_GHE_UPTURN_LOWER - SPR_CHAR_START }, // Punctuation - { UnicodeChar::left_brace, SPR_G2_LEFT_BRACE - SPR_CHAR_START }, - { UnicodeChar::vertical_bar, SPR_G2_VERTICAL_BAR - SPR_CHAR_START }, - { UnicodeChar::right_brace, SPR_G2_RIGHT_BRACE - SPR_CHAR_START }, - { UnicodeChar::tilde, SPR_G2_TILDE - SPR_CHAR_START }, + { UnicodeChar::left_brace, SPR_FONTS_LEFT_BRACE - SPR_CHAR_START }, + { UnicodeChar::vertical_bar, SPR_FONTS_VERTICAL_BAR - SPR_CHAR_START }, + { UnicodeChar::right_brace, SPR_FONTS_RIGHT_BRACE - SPR_CHAR_START }, + { UnicodeChar::tilde, SPR_FONTS_TILDE - SPR_CHAR_START }, { UnicodeChar::non_breaking_space, ' ' - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::interpunct, SPR_G2_INTERPUNCT - SPR_CHAR_START }, + { UnicodeChar::interpunct, SPR_FONTS_INTERPUNCT - SPR_CHAR_START }, { UnicodeChar::multiplication_sign, CSChar::cross - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::en_dash, '-' - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::em_dash, '-' - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::single_quote_open, '`' - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::single_quote_end, '\'' - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::single_german_quote_open, ',' - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::german_quote_open, SPR_G2_GERMAN_OPENQUOTES - SPR_CHAR_START }, + { UnicodeChar::german_quote_open, SPR_FONTS_GERMAN_OPENQUOTES - SPR_CHAR_START }, { UnicodeChar::bullet, CSChar::bullet - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::ellipsis, SPR_G2_ELLIPSIS - SPR_CHAR_START }, + { UnicodeChar::ellipsis, SPR_FONTS_ELLIPSIS - SPR_CHAR_START }, { UnicodeChar::narrow_non_breaking_space, ' ' - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::quote_open, CSChar::quote_open - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::quote_close, CSChar::quote_close - CS_SPRITE_FONT_OFFSET }, // Currency - { UnicodeChar::guilder, SPR_G2_GUILDER_SIGN - SPR_CHAR_START }, + { UnicodeChar::guilder, SPR_FONTS_GUILDER_SIGN - SPR_CHAR_START }, { UnicodeChar::euro, CSChar::euro - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::rouble, SPR_G2_ROUBLE_SIGN - SPR_CHAR_START }, + { UnicodeChar::rouble, SPR_FONTS_ROUBLE_SIGN - SPR_CHAR_START }, // Dingbats { UnicodeChar::up, CSChar::up - CS_SPRITE_FONT_OFFSET }, @@ -242,7 +242,7 @@ static const std::unordered_map codepointOffsetMap = { // Emoji { UnicodeChar::cross, CSChar::cross - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::water, CSChar::water - CS_SPRITE_FONT_OFFSET }, - { UnicodeChar::eye, SPR_G2_EYE - SPR_CHAR_START }, + { UnicodeChar::eye, SPR_FONTS_EYE - SPR_CHAR_START }, { UnicodeChar::road, CSChar::road - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::railway, CSChar::railway - CS_SPRITE_FONT_OFFSET }, @@ -285,10 +285,10 @@ void FontSpriteInitialiseCharacters() for (const auto& fontStyle : FontStyles) { - int32_t glyphOffset = EnumValue(fontStyle) * SPR_G2_GLYPH_COUNT; - for (auto glyphIndex = 0u; glyphIndex < SPR_G2_GLYPH_COUNT; glyphIndex++) + int32_t glyphOffset = EnumValue(fontStyle) * SPR_FONTS_GLYPH_COUNT; + for (auto glyphIndex = 0u; glyphIndex < SPR_FONTS_GLYPH_COUNT; glyphIndex++) { - const G1Element* g1 = GfxGetG1Element(glyphIndex + SPR_G2_CHAR_BEGIN + glyphOffset); + const G1Element* g1 = GfxGetG1Element(glyphIndex + SPR_FONTS_BEGIN + glyphOffset); int32_t width = 0; if (g1 != nullptr) { @@ -325,7 +325,7 @@ int32_t FontSpriteGetCodepointWidth(FontStyle fontStyle, int32_t codepoint) auto baseFontIndex = EnumValue(fontStyle); if (glyphIndex >= kSpriteFontGlyphCount) { - glyphIndex = (SPR_CHAR_START + glyphIndex) - SPR_G2_CHAR_BEGIN; + glyphIndex = (SPR_CHAR_START + glyphIndex) - SPR_FONTS_BEGIN; if (glyphIndex >= static_cast(std::size(_additionalSpriteFontCharacterWidth[baseFontIndex]))) { @@ -349,7 +349,7 @@ ImageId FontSpriteGetCodepointSprite(FontStyle fontStyle, int32_t codepoint) auto codePointOffset = FontSpriteGetCodepointOffset(codepoint); if (codePointOffset > kSpriteFontGlyphCount) { - offset = EnumValue(fontStyle) * SPR_G2_GLYPH_COUNT; + offset = EnumValue(fontStyle) * SPR_FONTS_GLYPH_COUNT; } return ImageId(SPR_CHAR_START + offset + codePointOffset, COLOUR_BLACK); diff --git a/src/openrct2/drawing/ScrollingText.cpp b/src/openrct2/drawing/ScrollingText.cpp index 805940994c..50d2ef8d7a 100644 --- a/src/openrct2/drawing/ScrollingText.cpp +++ b/src/openrct2/drawing/ScrollingText.cpp @@ -39,7 +39,7 @@ struct DrawScrollText }; static DrawScrollText _drawScrollTextList[OpenRCT2::kMaxScrollingTextEntries]; -static uint8_t _characterBitmaps[kSpriteFontGlyphCount + SPR_G2_GLYPH_COUNT][8]; +static uint8_t _characterBitmaps[kSpriteFontGlyphCount + SPR_FONTS_GLYPH_COUNT][8]; static uint32_t _drawSCrollNextIndex = 0; static std::mutex _scrollingTextMutex; @@ -106,7 +106,7 @@ static void ScrollingTextInitialiseScrollingText() void ScrollingTextInitialiseBitmaps() { ScrollingTextInitialiseCharacterBitmaps(SPR_CHAR_START, 0, kSpriteFontGlyphCount, gTinyFontAntiAliased); - ScrollingTextInitialiseCharacterBitmaps(SPR_G2_CHAR_BEGIN, kSpriteFontGlyphCount, SPR_G2_GLYPH_COUNT, false); + ScrollingTextInitialiseCharacterBitmaps(SPR_FONTS_BEGIN, kSpriteFontGlyphCount, SPR_FONTS_GLYPH_COUNT, false); ScrollingTextInitialiseScrollingText(); } @@ -115,7 +115,7 @@ static uint8_t* FontSpriteGetCodepointBitmap(int32_t codepoint) auto offset = FontSpriteGetCodepointOffset(codepoint); if (offset >= kSpriteFontGlyphCount) { - return _characterBitmaps[offset - (SPR_G2_CHAR_BEGIN - SPR_CHAR_START) + kSpriteFontGlyphCount]; + return _characterBitmaps[offset - (SPR_FONTS_BEGIN - SPR_CHAR_START) + kSpriteFontGlyphCount]; } return _characterBitmaps[offset];