glutStrokeCharacter(3GLUT) GLUT glutStrokeCharacter(3GLUT)

glutStrokeCharacter - renders a stroke character using OpenGL.

#include <GLUT/glut.h>
void glutStrokeCharacter(void *font, int character);

Stroke font to use.
Character to render (not confined to 8 bits).

Without using any display lists, glutStrokeCharacter renders the character in the named stroke font. The available fonts are:

A proportionally spaced Roman Simplex font for ASCII characters 32 through 127. The maximum top character in the font is 119.05 units; the bottom descends 33.33 units.
A mono-spaced spaced Roman Simplex font (same characters as GLUT_STROKE_ROMAN) for ASCII characters 32 through 127. The maximum top character in the font is 119.05 units; the bottom descends 33.33 units. Each character is 104.76 units wide.

Rendering a nonexistent character has no effect. A glTranslatef is used to translate the current model view matrix to advance the width of the character.

Here is a routine that shows how to render a string of ASCII text with glutStrokeCharacter:

  void 
  output(GLfloat x, GLfloat y, char *text)
  {
    char *p;
    glPushMatrix();
    glTranslatef(x, y, 0);
    for (p = text; *p; p++)
      glutStrokeCharacter(GLUT_STROKE_ROMAN, *p);
    glPopMatrix();
  }

If you want to draw stroke font text using wide, antialiased lines, use:

  glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
  glEnable(GL_BLEND);
  glEnable(GL_LINE_SMOOTH);
  glLineWidth(2.0);
  output(200, 225, "This is antialiased.");

glutBitmapCharacter, glutStrokeWidth

Mark J. Kilgard (mjk@nvidia.com)

3.7 GLUT