GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  AL_GRAB_FONT_FROM_BITMAP (3)

NAME

al_grab_font_from_bitmap - Allegro 5 API

CONTENTS

Synopsis
Description
See Also

SYNOPSIS

C]
#include <allegro5/allegro_font.h>

ALLEGRO_FONT *al_grab_font_from_bitmap(ALLEGRO_BITMAP *bmp, int ranges_n, const int ranges[]) ]

DESCRIPTION

Creates a new font from an Allegro bitmap. You can delete the bitmap after the function returns as the font will contain a copy for itself.

Parameters:
[bu] bmp: The bitmap with the glyphs drawn onto it
[bu] n: Number of unicode ranges in the bitmap.
[bu] ranges: [aq]n[aq] pairs of first and last unicode point to map glyphs to for each range.
The bitmap format is as in the following example, which contains three glyphs for 1, 2 and 3.
C]
.............
. 1 .222.333.
. 1 .  2.  3.
. 1 .222.333.
. 1 .2  .  3.
. 1 .222.333.
.............
]

In the above illustration, the dot is for pixels having the background color. It is determined by the color of the top left pixel in the bitmap. There should be a border of at least 1 pixel with this color to the bitmap edge and between all glyphs.
Each glyph is inside a rectangle of pixels not containing the background color. The height of all glyph rectangles should be the same, but the width can vary.
The placement of the rectangles does not matter, except that glyphs are scanned from left to right and top to bottom to match them to the specified unicode codepoints.
The glyphs will simply be drawn using al_draw_bitmap(3), so usually you will want the rectangles filled with full transparency and the glyphs drawn in opaque white.
Examples:
C]
int ranges[] = {32, 126};
al_grab_font_from_bitmap(bitmap, 1, ranges)

int ranges[] = { 0x0020, 0x007F, /* ASCII */ 0x00A1, 0x00FF, /* Latin 1 */ 0x0100, 0x017F, /* Extended-A */ 0x20AC, 0x20AC}; /* Euro */ al_grab_font_from_bitmap(bitmap, 4, ranges) ]

The first example will grab glyphs for the 95 standard printable ASCII characters, beginning with the space character (32) and ending with the tilde character (126). The second example will map the first 96 glyphs found in the bitmap to ASCII range, the next 95 glyphs to Latin 1, the next 128 glyphs to Extended-A, and the last glyph to the Euro character. (This is just the characters found in the Allegro 4 font.)

SEE ALSO

al_load_bitmap(3), al_grab_font_from_bitmap(3)

Search for    or go to Top of page |  Section 3 |  Main Index


Allegro reference manual AL_GRAB_FONT_FROM_BITMAP (3)

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.