2012-05-30 58 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 - 這一個畫一個漂亮的混合文本,但它使用alpha混合和它的速度慢,但給人很不錯的結果

+0

我在我的例子中使用了_Shaded,但它繪製了一個帶有白色消息的黑色矩形。但我只想要沒有矩形的消息。如果我使用_Solid,它會在內部繪製白色字母 – Allok

+0

對不起,但我不明白你想實現什麼。你可以張貼一些圖片或其他東西來說明事情嗎?你到底想要什麼? 也許這些字母是透明的,因爲你使用的字體應該是這樣的? – akaltar