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