1 /* glxfonts, Copyright (c) 2001-2009 Jamie Zawinski <jwz@jwz.org>
2 * Loads X11 fonts for use with OpenGL.
4 * Permission to use, copy, modify, distribute, and sell this software and its
5 * documentation for any purpose is hereby granted without fee, provided that
6 * the above copyright notice appear in all copies and that both that
7 * copyright notice and this permission notice appear in supporting
8 * documentation. No representations are made about the suitability of this
9 * software for any purpose. It is provided "as is" without express or
12 * Loads X11 fonts for use with OpenGL.
15 #ifndef __GLXFONTS_H__
16 #define __GLXFONTS_H__
18 /* This is basically the same as glXUseXFont().
19 We have our own version of it for portability.
21 extern void xscreensaver_glXUseXFont (Display *dpy, Font font,
22 int first, int count, int listbase);
24 /* Loads the font named by the X resource "res".
25 Returns an XFontStruct.
26 Also converts the font to a set of GL lists and returns the first list.
28 extern void load_font (Display *, char *resource,
29 XFontStruct **font_ret,
32 /* Bounding box of the string in pixels.
34 extern int string_width (XFontStruct *f, const char *c, int *height_ret);
36 /* Draws the string on the window at the given pixel position.
37 Newlines and tab stops are honored.
38 Any text inside [] will be rendered as a subscript.
39 Assumes the font has been loaded as with load_font(). */
40 void print_gl_string (Display *dpy,
43 int window_width, int window_height,
46 Bool clear_background_p);
48 #endif /* __GLXFONTS_H__ */