Artifact
c60fa313fe9bb12c47041b384bfd638b9ab883b2:
- File
sdl2/ttf-shim/ttf-shim.h
— part of check-in
[31b4446932]
at
2018-01-08 17:10:49
on branch trunk
— Initial SDL_ttf support
(user:
ovenpasta@users.noreply.github.com
size: 2115)
0000: 23 69 6e 63 6c 75 64 65 20 3c 53 44 4c 32 2f 53 #include <SDL2/S
0010: 44 4c 5f 74 74 66 2e 68 3e 0a 23 69 6e 63 6c 75 DL_ttf.h>.#inclu
0020: 64 65 20 3c 53 44 4c 32 2f 53 44 4c 2e 68 3e 0a de <SDL2/SDL.h>.
0030: 0a 65 78 74 65 72 6e 20 44 45 43 4c 53 50 45 43 .extern DECLSPEC
0040: 20 53 44 4c 5f 53 75 72 66 61 63 65 20 2a 20 53 SDL_Surface * S
0050: 44 4c 43 41 4c 4c 20 53 54 54 46 5f 52 65 6e 64 DLCALL STTF_Rend
0060: 65 72 54 65 78 74 5f 53 6f 6c 69 64 28 54 54 46 erText_Solid(TTF
0070: 5f 46 6f 6e 74 20 2a 66 6f 6e 74 2c 0a 20 20 20 _Font *font,.
0080: 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e con
0090: 73 74 20 63 68 61 72 20 2a 74 65 78 74 2c 20 53 st char *text, S
00a0: 44 4c 5f 43 6f 6c 6f 72 20 2a 66 67 29 3b 0a 65 DL_Color *fg);.e
00b0: 78 74 65 72 6e 20 44 45 43 4c 53 50 45 43 20 53 xtern DECLSPEC S
00c0: 44 4c 5f 53 75 72 66 61 63 65 20 2a 20 53 44 4c DL_Surface * SDL
00d0: 43 41 4c 4c 20 53 54 54 46 5f 52 65 6e 64 65 72 CALL STTF_Render
00e0: 55 54 46 38 5f 53 6f 6c 69 64 28 54 54 46 5f 46 UTF8_Solid(TTF_F
00f0: 6f 6e 74 20 2a 66 6f 6e 74 2c 0a 20 20 20 20 20 ont *font,.
0100: 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 const
0110: 20 63 68 61 72 20 2a 74 65 78 74 2c 20 53 44 4c char *text, SDL
0120: 5f 43 6f 6c 6f 72 20 2a 66 67 29 3b 0a 65 78 74 _Color *fg);.ext
0130: 65 72 6e 20 44 45 43 4c 53 50 45 43 20 53 44 4c ern DECLSPEC SDL
0140: 5f 53 75 72 66 61 63 65 20 2a 20 53 44 4c 43 41 _Surface * SDLCA
0150: 4c 4c 20 53 54 54 46 5f 52 65 6e 64 65 72 55 4e LL STTF_RenderUN
0160: 49 43 4f 44 45 5f 53 6f 6c 69 64 28 54 54 46 5f ICODE_Solid(TTF_
0170: 46 6f 6e 74 20 2a 66 6f 6e 74 2c 0a 20 20 20 20 Font *font,.
0180: 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 cons
0190: 74 20 55 69 6e 74 31 36 20 2a 74 65 78 74 2c 20 t Uint16 *text,
01a0: 53 44 4c 5f 43 6f 6c 6f 72 20 2a 66 67 29 3b 0a SDL_Color *fg);.
01b0: 65 78 74 65 72 6e 20 44 45 43 4c 53 50 45 43 20 extern DECLSPEC
01c0: 53 44 4c 5f 53 75 72 66 61 63 65 20 2a 20 53 44 SDL_Surface * SD
01d0: 4c 43 41 4c 4c 20 53 54 54 46 5f 52 65 6e 64 65 LCALL STTF_Rende
01e0: 72 47 6c 79 70 68 5f 53 6f 6c 69 64 28 54 54 46 rGlyph_Solid(TTF
01f0: 5f 46 6f 6e 74 20 2a 66 6f 6e 74 2c 0a 20 20 20 _Font *font,.
0200: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0210: 20 55 69 6e 74 31 36 20 63 68 2c 20 53 44 4c 5f Uint16 ch, SDL_
0220: 43 6f 6c 6f 72 20 2a 66 67 29 3b 0a 0a 65 78 74 Color *fg);..ext
0230: 65 72 6e 20 44 45 43 4c 53 50 45 43 20 53 44 4c ern DECLSPEC SDL
0240: 5f 53 75 72 66 61 63 65 20 2a 20 53 44 4c 43 41 _Surface * SDLCA
0250: 4c 4c 20 53 54 54 46 5f 52 65 6e 64 65 72 54 65 LL STTF_RenderTe
0260: 78 74 5f 53 68 61 64 65 64 28 54 54 46 5f 46 6f xt_Shaded(TTF_Fo
0270: 6e 74 20 2a 66 6f 6e 74 2c 0a 20 20 20 20 20 20 nt *font,.
0280: 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 const
0290: 63 68 61 72 20 2a 74 65 78 74 2c 20 53 44 4c 5f char *text, SDL_
02a0: 43 6f 6c 6f 72 20 2a 66 67 2c 20 53 44 4c 5f 43 Color *fg, SDL_C
02b0: 6f 6c 6f 72 20 2a 62 67 29 3b 0a 65 78 74 65 72 olor *bg);.exter
02c0: 6e 20 44 45 43 4c 53 50 45 43 20 53 44 4c 5f 53 n DECLSPEC SDL_S
02d0: 75 72 66 61 63 65 20 2a 20 53 44 4c 43 41 4c 4c urface * SDLCALL
02e0: 20 53 54 54 46 5f 52 65 6e 64 65 72 55 54 46 38 STTF_RenderUTF8
02f0: 5f 53 68 61 64 65 64 28 54 54 46 5f 46 6f 6e 74 _Shaded(TTF_Font
0300: 20 2a 66 6f 6e 74 2c 0a 20 20 20 20 20 20 20 20 *font,.
0310: 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 63 68 const ch
0320: 61 72 20 2a 74 65 78 74 2c 20 53 44 4c 5f 43 6f ar *text, SDL_Co
0330: 6c 6f 72 20 2a 66 67 2c 20 53 44 4c 5f 43 6f 6c lor *fg, SDL_Col
0340: 6f 72 20 2a 62 67 29 3b 0a 65 78 74 65 72 6e 20 or *bg);.extern
0350: 44 45 43 4c 53 50 45 43 20 53 44 4c 5f 53 75 72 DECLSPEC SDL_Sur
0360: 66 61 63 65 20 2a 20 53 44 4c 43 41 4c 4c 20 53 face * SDLCALL S
0370: 54 54 46 5f 52 65 6e 64 65 72 55 4e 49 43 4f 44 TTF_RenderUNICOD
0380: 45 5f 53 68 61 64 65 64 28 54 54 46 5f 46 6f 6e E_Shaded(TTF_Fon
0390: 74 20 2a 66 6f 6e 74 2c 0a 20 20 20 20 20 20 20 t *font,.
03a0: 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 55 const U
03b0: 69 6e 74 31 36 20 2a 74 65 78 74 2c 20 53 44 4c int16 *text, SDL
03c0: 5f 43 6f 6c 6f 72 20 2a 66 67 2c 20 53 44 4c 5f _Color *fg, SDL_
03d0: 43 6f 6c 6f 72 20 2a 62 67 29 3b 0a 65 78 74 65 Color *bg);.exte
03e0: 72 6e 20 44 45 43 4c 53 50 45 43 20 53 44 4c 5f rn DECLSPEC SDL_
03f0: 53 75 72 66 61 63 65 20 2a 20 53 44 4c 43 41 4c Surface * SDLCAL
0400: 4c 20 53 54 54 46 5f 52 65 6e 64 65 72 47 6c 79 L STTF_RenderGly
0410: 70 68 5f 53 68 61 64 65 64 28 54 54 46 5f 46 6f ph_Shaded(TTF_Fo
0420: 6e 74 20 2a 66 6f 6e 74 2c 0a 20 20 20 20 20 20 nt *font,.
0430: 20 20 20 20 20 20 20 20 20 20 55 69 6e 74 31 36 Uint16
0440: 20 63 68 2c 20 53 44 4c 5f 43 6f 6c 6f 72 20 2a ch, SDL_Color *
0450: 66 67 2c 20 53 44 4c 5f 43 6f 6c 6f 72 20 2a 62 fg, SDL_Color *b
0460: 67 29 3b 0a 0a 65 78 74 65 72 6e 20 44 45 43 4c g);..extern DECL
0470: 53 50 45 43 20 53 44 4c 5f 53 75 72 66 61 63 65 SPEC SDL_Surface
0480: 20 2a 20 53 44 4c 43 41 4c 4c 20 53 54 54 46 5f * SDLCALL STTF_
0490: 52 65 6e 64 65 72 54 65 78 74 5f 42 6c 65 6e 64 RenderText_Blend
04a0: 65 64 28 54 54 46 5f 46 6f 6e 74 20 2a 66 6f 6e ed(TTF_Font *fon
04b0: 74 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 t,.
04c0: 20 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 74 const char *t
04d0: 65 78 74 2c 20 53 44 4c 5f 43 6f 6c 6f 72 20 2a ext, SDL_Color *
04e0: 66 67 29 3b 0a 65 78 74 65 72 6e 20 44 45 43 4c fg);.extern DECL
04f0: 53 50 45 43 20 53 44 4c 5f 53 75 72 66 61 63 65 SPEC SDL_Surface
0500: 20 2a 20 53 44 4c 43 41 4c 4c 20 53 54 54 46 5f * SDLCALL STTF_
0510: 52 65 6e 64 65 72 55 54 46 38 5f 42 6c 65 6e 64 RenderUTF8_Blend
0520: 65 64 28 54 54 46 5f 46 6f 6e 74 20 2a 66 6f 6e ed(TTF_Font *fon
0530: 74 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 t,.
0540: 20 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 74 const char *t
0550: 65 78 74 2c 20 53 44 4c 5f 43 6f 6c 6f 72 20 2a ext, SDL_Color *
0560: 66 67 29 3b 0a 65 78 74 65 72 6e 20 44 45 43 4c fg);.extern DECL
0570: 53 50 45 43 20 53 44 4c 5f 53 75 72 66 61 63 65 SPEC SDL_Surface
0580: 20 2a 20 53 44 4c 43 41 4c 4c 20 53 54 54 46 5f * SDLCALL STTF_
0590: 52 65 6e 64 65 72 55 4e 49 43 4f 44 45 5f 42 6c RenderUNICODE_Bl
05a0: 65 6e 64 65 64 28 54 54 46 5f 46 6f 6e 74 20 2a ended(TTF_Font *
05b0: 66 6f 6e 74 2c 0a 20 20 20 20 20 20 20 20 20 20 font,.
05c0: 20 20 20 20 20 20 63 6f 6e 73 74 20 55 69 6e 74 const Uint
05d0: 31 36 20 2a 74 65 78 74 2c 20 53 44 4c 5f 43 6f 16 *text, SDL_Co
05e0: 6c 6f 72 20 2a 66 67 29 3b 0a 0a 65 78 74 65 72 lor *fg);..exter
05f0: 6e 20 44 45 43 4c 53 50 45 43 20 53 44 4c 5f 53 n DECLSPEC SDL_S
0600: 75 72 66 61 63 65 20 2a 20 53 44 4c 43 41 4c 4c urface * SDLCALL
0610: 20 53 54 54 46 5f 52 65 6e 64 65 72 54 65 78 74 STTF_RenderText
0620: 5f 42 6c 65 6e 64 65 64 5f 57 72 61 70 70 65 64 _Blended_Wrapped
0630: 28 54 54 46 5f 46 6f 6e 74 20 2a 66 6f 6e 74 2c (TTF_Font *font,
0640: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
0650: 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 74 65 78 const char *tex
0660: 74 2c 20 53 44 4c 5f 43 6f 6c 6f 72 20 2a 66 67 t, SDL_Color *fg
0670: 2c 20 55 69 6e 74 33 32 20 77 72 61 70 4c 65 6e , Uint32 wrapLen
0680: 67 74 68 29 3b 0a 65 78 74 65 72 6e 20 44 45 43 gth);.extern DEC
0690: 4c 53 50 45 43 20 53 44 4c 5f 53 75 72 66 61 63 LSPEC SDL_Surfac
06a0: 65 20 2a 20 53 44 4c 43 41 4c 4c 20 53 54 54 46 e * SDLCALL STTF
06b0: 5f 52 65 6e 64 65 72 55 54 46 38 5f 42 6c 65 6e _RenderUTF8_Blen
06c0: 64 65 64 5f 57 72 61 70 70 65 64 28 54 54 46 5f ded_Wrapped(TTF_
06d0: 46 6f 6e 74 20 2a 66 6f 6e 74 2c 0a 20 20 20 20 Font *font,.
06e0: 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 cons
06f0: 74 20 63 68 61 72 20 2a 74 65 78 74 2c 20 53 44 t char *text, SD
0700: 4c 5f 43 6f 6c 6f 72 20 2a 66 67 2c 20 55 69 6e L_Color *fg, Uin
0710: 74 33 32 20 77 72 61 70 4c 65 6e 67 74 68 29 3b t32 wrapLength);
0720: 0a 65 78 74 65 72 6e 20 44 45 43 4c 53 50 45 43 .extern DECLSPEC
0730: 20 53 44 4c 5f 53 75 72 66 61 63 65 20 2a 20 53 SDL_Surface * S
0740: 44 4c 43 41 4c 4c 20 53 54 54 46 5f 52 65 6e 64 DLCALL STTF_Rend
0750: 65 72 55 4e 49 43 4f 44 45 5f 42 6c 65 6e 64 65 erUNICODE_Blende
0760: 64 5f 57 72 61 70 70 65 64 28 54 54 46 5f 46 6f d_Wrapped(TTF_Fo
0770: 6e 74 20 2a 66 6f 6e 74 2c 0a 20 20 20 20 20 20 nt *font,.
0780: 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 const
0790: 55 69 6e 74 31 36 20 2a 74 65 78 74 2c 20 53 44 Uint16 *text, SD
07a0: 4c 5f 43 6f 6c 6f 72 20 2a 66 67 2c 20 55 69 6e L_Color *fg, Uin
07b0: 74 33 32 20 77 72 61 70 4c 65 6e 67 74 68 29 3b t32 wrapLength);
07c0: 0a 65 78 74 65 72 6e 20 44 45 43 4c 53 50 45 43 .extern DECLSPEC
07d0: 20 53 44 4c 5f 53 75 72 66 61 63 65 20 2a 20 53 SDL_Surface * S
07e0: 44 4c 43 41 4c 4c 20 53 54 54 46 5f 52 65 6e 64 DLCALL STTF_Rend
07f0: 65 72 47 6c 79 70 68 5f 42 6c 65 6e 64 65 64 28 erGlyph_Blended(
0800: 54 54 46 5f 46 6f 6e 74 20 2a 66 6f 6e 74 2c 0a TTF_Font *font,.
0810: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0820: 20 20 20 20 20 20 20 20 55 69 6e 74 31 36 20 63 Uint16 c
0830: 68 2c 20 53 44 4c 5f 43 6f 6c 6f 72 20 2a 66 67 h, SDL_Color *fg
0840: 29 3b 0a );.