Как мне создать растровое изображение как spritefont с несколькими символьными областями?

Как создать изображение растрового шрифта, которое содержит символы из нескольких регионов и правильно интерпретируется конвейером содержимого XNA?

Я хочу добавить некоторые специальные символы в мое растровое изображение шрифта, но я не знаю, как это сделать правильно.

UPD: думаю, я все ближе к своему ответу. Обработчик содержимого текстуры шрифта Sprite ищет немагентные квадраты на изображении и, вероятно, использует файл настроек xml, как и обычные спрайт-шрифты, для сопоставления каждого квадрата с соответствующим символом. Возможно, мне следует отредактировать этот XML-файл для моей пользовательской текстуры, но я пока не знаю, где его найти.

1 ответ

Решение

Там нет файла XML.

Вы должны создать пользовательский контент-процессор. Унаследовать этот процессор от FontTextureProcessor и переопределить GetCharacterForIndex метод.

Пусть ваш метод вернет символ для указанного индекса в вашей текстуре.

Реализация по умолчанию просто возвращает FirstCharacter + index, Ваша может использовать любую логику, которая ей нравится. (Я думаю, вы могли бы даже сделать это для анализа XML-файла для данных.)

(Обратите внимание, что для одного региона вы можете указать, что FirstCharacter находится в свойствах процессора содержимого "Текстура шрифта Sprite", в окне свойств (F4) для этого файла содержимого.)

Другие вопросы по тегам