FreeType-2.2.1 API Reference

Bitmap Handling

Synopsis

FT_Bitmap_NewFT_Bitmap_EmboldenFT_Bitmap_Done
FT_Bitmap_CopyFT_Bitmap_Convert


This section contains functions for converting FT_Bitmap objects.


FT_Bitmap_New


  FT_EXPORT( void )
  FT_Bitmap_New( FT_Bitmap  *abitmap );


Initialize a pointer to an FT_Bitmap structure.


inout
abitmap

A pointer to the bitmap structure.


[Index] [TOC]

FT_Bitmap_Copy


  FT_EXPORT( FT_Error )
  FT_Bitmap_Copy( FT_Library        library,
                  const FT_Bitmap  *source,
                  FT_Bitmap        *target);


Copies an bitmap into another one.


input
library

A handle to a library object.

source

A handle to the source bitmap.

output
target

A handle to the target bitmap.

return

FreeType error code. 0 means success.


[Index] [TOC]

FT_Bitmap_Embolden


  FT_EXPORT( FT_Error )
  FT_Bitmap_Embolden( FT_Library  library,
                      FT_Bitmap*  bitmap,
                      FT_Pos      xStrength,
                      FT_Pos      yStrength );


Embolden a bitmap. The new bitmap will be about ‘xStrength’ pixels wider and ‘yStrength’ pixels higher. The left and bottom borders are kept unchanged.


input
library

A handle to a library object.

xStrength

How strong the glyph is emboldened horizontally. Expressed in 26.6 pixel format.

yStrength

How strong the glyph is emboldened vertically. Expressed in 26.6 pixel format.

inout
bitmap

A handle to the target bitmap.

return

FreeType error code. 0 means success.

note

The current implementation restricts ‘xStrength’ to be less than or equal to 8 if bitmap is of pixel_mode FT_PIXEL_MODE_MONO.

If you want to embolden the bitmap owned by a FT_GlyphSlotRec, you should call ‘FT_GlyphSlot_Own_Bitmap’ on the slot first.


[Index] [TOC]

FT_Bitmap_Convert


  FT_EXPORT( FT_Error )
  FT_Bitmap_Convert( FT_Library        library,
                     const FT_Bitmap  *source,
                     FT_Bitmap        *target,
                     FT_Int            alignment );


Convert a bitmap object with depth 1bpp, 2bpp, 4bpp, or 8bpp to a bitmap object with depth 8bpp, making the number of used bytes per line (a.k.a. the ‘pitch’) a multiple of ‘alignment’.


input
library

A handle to a library object.

source

The source bitmap.

alignment

The pitch of the bitmap is a multiple of this parameter. Common values are 1, 2, or 4.

output
target

The target bitmap.

return

FreeType error code. 0 means success.

note

It is possible to call FT_Bitmap_Convert multiple times without calling FT_Bitmap_Done (the memory is simply reallocated).

Use FT_Bitmap_Done to finally remove the bitmap object.

The ‘library’ argument is taken to have access to FreeType's memory handling functions.


[Index] [TOC]

FT_Bitmap_Done


  FT_EXPORT( FT_Error )
  FT_Bitmap_Done( FT_Library  library,
                  FT_Bitmap  *bitmap );


Destroy a bitmap object created with FT_Bitmap_New.


input
library

A handle to a library object.

bitmap

The bitmap object to be freed.

return

FreeType error code. 0 means success.

note

The ‘library’ argument is taken to have access to FreeType's memory handling functions.


[Index] [TOC]