1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
|
/************************************************************************
* SFONT - SDL Font Library by Karl Bartel <karlb@gmx.net> *
* *
* All functions are explained below. There are two versions of each *
* funtction. The first is the normal one, the function with the *
* 2 at the end can be used when you want to handle more than one font *
* in your program. *
* *
************************************************************************/
#include <SDL/SDL.h>
extern int font_height;
// Delcare one variable of this type for each font you are using.
// To load the fonts, load the font image into YourFont->Surface
// and call InitFont( YourFont );
typedef struct {
SDL_Surface *Surface;
int CharPos[512];
int h;
} SFont_FontInfo;
// Initializes the font
// Font: this contains the suface with the font.
// The font must be loaded before using this function.
void InitFont(SDL_Surface * Font);
void InitFont2(SFont_FontInfo * Font);
// Blits a string to a surface
// Destination: the suface you want to blit to
// text: a string containing the text you want to blit.
void PutString(SDL_Surface * Surface, int x, int y, const char *text);
void PutString2(SDL_Surface * Surface, SFont_FontInfo * Font, int x, int y,
const char *text);
// Returns the width of "text" in pixels
int TextWidth(char *text);
int TextWidth2(SFont_FontInfo * Font, char *text);
// Blits a string to with centered x position
void XCenteredString(SDL_Surface * Surface, int y, char *text);
void XCenteredString2(SDL_Surface * Surface, SFont_FontInfo * Font, int y,
char *text);
// Allows the user to enter text
// Width: What is the maximum width of the text (in pixels)
// text: This string contains the text which was entered by the user
// ph: nonblocking
int SFont_Input(SDL_Surface * Destination, int x, int y, int Width,
char *text);
int SFont_Input2(SDL_Surface * Destination, SFont_FontInfo * Font, int x,
int y, int Width, char *text);
/*! \brief Get width of a text
*
* \param text text string
* \return width in pixels
*/
int SFont_wide(const char *text);
/*! \brief Clear the event queue!
*
* This function clears the event buffer and enables unicode input or
* so...
*
* What!?
*/
void clearBuffer();
|