private with Alfont;
private package Font_API.Alfont_Fonts is
procedure Initialize;
procedure Finalize;
function Load_Font( filename : String; size : Positive ) return Font_Type;
pragma Precondition( filename'Length > 0 );
private
use Alfont;
type Alfont_Font is new Abstract_Font with
record
ptr : A_Alfont_Font := null;
end record;
procedure Construct( this : access Alfont_Font;
filename : String;
size : Positive );
procedure Delete( this : in out Alfont_Font );
function Text_Height( this : access Alfont_Font ) return Positive;
function Text_Length( this : access Alfont_Font;
str : String ) return Natural;
procedure Textout( this : access Alfont_Font;
bmp : A_Bitmap;
str : String;
x, y : Integer;
color : Color_Type;
smooth : Boolean );
end Font_API.Alfont_Fonts;