74 lines
3.4 KiB
C
74 lines
3.4 KiB
C
/****************************************************************************/
|
|
/* */
|
|
/* 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 */
|