Blackthorne/шрифты
Версия от 20:21, 30 мая 2017; Dimouse (обсуждение | вклад)
Шрифты в Blackthorne представлены в DATA.DAT в ресурсах 289 и 291. Файл содержит данные о 64 символах.
Формат хранения имеет занимательный и своеобразный алгоритм кодирования «картинки» шрифта. Массив байтов заполняется в поле размером 512x8, причем заполнение идет парами байт, сначала сверху вниз. Полученное поле делится на области 8x8, каждое из которых представляет собой отдельный обособленный символ. Однако и здесь не все так просто. Каждый нечетный по порядку байт отвечает за отображение соответствующего пикселя левой части, каждый четный — правой части. Расчет X-координаты в пределах 8-пиксельной зоны ведется по следующей формуле:
- Если номер n текущего байта - четное число, то x = n/2
- Если номер текущего байта - нечетное число, то x = (n + 1)/2 + 3
Байты могут принимать одно из четырех значений:
- 0x00 — фон (прозрачная область)
- 0x01 — основной цвет
- 0x02 — «тень» шрифта
- 0x03 — фон (прозрачная область, встречается только в ресурсе 289; вероятно, данный цвет использовался для обозначения границ символов)