summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJinghua Luo <sunmoon1997@gmail.com>2007-02-04 14:33:06 +0800
committerJinghua Luo <sunmoon1997@gmail.com>2007-02-04 14:33:06 +0800
commitf64cef8cbd1c9f057c65803d7eeb4f1d46eb3333 (patch)
tree6453110cf24e5eceadf0490e23c3c9c01155b4fc
parent465bf75a452b742489e5f713e3f07c9124622efe (diff)
test: opengl test align text.
-rw-r--r--src/sdl-opengl-test.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/sdl-opengl-test.c b/src/sdl-opengl-test.c
index 9169be9..b2c37e1 100644
--- a/src/sdl-opengl-test.c
+++ b/src/sdl-opengl-test.c
@@ -17,7 +17,7 @@ main(int argc, char *argv[])
Uint32 videoflags;
int done;
SDL_Event event;
- float alpha, step;
+ float alpha, step, ux, uy;
sdl_freetype_font_t * font;
sdl_freetype_glyph_render_t * render;
sdl_freetype_text_extents_t extents;
@@ -40,10 +40,12 @@ main(int argc, char *argv[])
if (!font)
goto errquit0;
+ ux = 1.0 / 320;
+ uy = 1.0 / 240;
render = sdl_freetype_opengl_render_create ();
if (!render)
goto errquit1;
- sdl_freetype_opengl_render_set_unit_scale (render, 1.0 / 320, 1.0 / 240);
+ sdl_freetype_opengl_render_set_unit_scale (render, ux, uy);
sdl_freetype_font_set_render (font, render);
glEnable (GL_TEXTURE_2D);
@@ -82,7 +84,8 @@ main(int argc, char *argv[])
glScalef (alpha + 1.0, alpha + 1.0, 1.0);
glRotatef (alpha * 360, 1.0, 1.0, 0);
sdl_freetype_font_utf8_extents (font, &extents, TEXT, -1);
- glTranslatef (-extents.width / (320.0 * 2), -extents.height / (240.0 * 2), 0);
+ glTranslatef (-extents.width * ux / 2 - extents.x_bearing * ux,
+ -extents.height * uy / 2 + extents.y_bearing * uy, 0);
sdl_freetype_font_show_utf8 (font, NULL, 255, 0, 0, alpha * 255,
0, 0, TEXT, -1);