/****************************************************************************/ /* */ /* The FreeType project -- a free and portable quality TrueType renderer. */ /* */ /* Copyright 1996-1999 by */ /* D. Turner, R.Wilhelm, and W. Lemberg */ /* */ /* display.h: Display component interface used by test programs */ /* */ /* This file is used to display glyphs and strings in a target window */ /* using the graphics drivers provided by gmain.c, gevents.h, etc. */ /* */ /* Its role is to be shared and heavely commented to let people understand */ /* how we do the job... */ /* */ /* See comments in display.c for a full description! */ /* */ /****************************************************************************/ #ifndef DISPLAY_H #define DISPLAY_H #include "freetype.h" /* TT_Raster_Map */ /* The target bitmap or pixmap -- covering the full display window/screen */ extern TT_Raster_Map Bit; /* A smaller intermediate bitmap used to render individual glyphs when */ /* font smoothing mode is activated. It is then or-ed to `Bit'. */ extern TT_Raster_Map Small_Bit; /* the virtual palette */ extern unsigned char virtual_palette[5]; /* Or-ing the possible palette values gets us from 0 to 7 */ /* We must bound check these... */ extern unsigned char bounded_palette[8]; /* Clears the Bit bitmap/pixmap */ void Clear_Display( void ); /* Clears the Small_Bit pixmap */ void Clear_Small( void ); /* Initialize the display bitmap named Bit */ int Init_Display( int font_smoothing ); /* Initialize Small Bitmap */ int Init_Small( int x_ppem, int y_ppem ); /* Convert the display pixmap from virtual to display palette */ void Convert_To_Display_Palette( void ); /* Render a single glyph into the display bit/pixmap. */ /* */ /* Note that in b/w mode, we simply render the glyph directly into */ /* the display map, as the scan-line converter or-es the glyph into */ /* the target bitmap. */ /* */ /* In gray mode, however, the glyph is first rendered individually in */ /* the Small_Bit map, then 'or-ed' with bounding into the display */ /* pixmap. */ /* */ TT_Error Render_Single_Glyph( int font_smoothing, TT_Glyph glyph, int x_offset, int y_offset ); #endif /* DISPLAY_H */ /* End */