2012-05-30 3 views
0

Вот пример:Как нарисовать сплошной текст с помощью sdl_ttf?

SDL_Color textcol = {255, 255, 255}; 
SDL_Color backtextcol = {0, 0, 0}; 
SDL_Surface *mes = TTF_RenderText_Shaded(font, "The game has begun", textcol, backtextcol); 
apply_surface(40, 40, mes, screen); 
SDL_Flip(screen); 

Благодаря этому примеру, мы рисуем черный прямоугольник с белыми буквами. Можно ли рисовать только белые буквы с черным внутри без черного прямоугольника?

ответ

1

Да, это возможно. В SDL_TTF есть 3 основные функции текстового рисования:

TTF_RenderText_Solid - этот инструмент отображает основной текст (белый фон) и его быстрый, но некачественный, и будет выглядеть пиксельно.

TTF_RenderText_Shaded - это один рисует красивые смешанные символы, но предварительно определенного цвета фона

TTF_RenderText_Blended - это один рисует хороший смешанный текст, но он использует альфа-смешивание и его медленно, но дает очень хорошие результаты

+0

Я использую _Shaded в моем примере, но он рисует большой черный прямоугольник с белым сообщением. Но я хочу просто сообщение без прямоугольника. Если я использую _Solid, он рисует белые буквы с прозрачным внутри. – Allok

+0

Извините, но я не понимаю, чего вы хотите достичь. Не могли бы вы разместить какой-то образ или что-то, чтобы все было ясно? что вы точно хотите? Возможно, буквы прозрачны, потому что вы используете шрифт, который должен быть таким? – akaltar

Смежные вопросы