FreeType_2.1.2 API Reference
Whole document tree
    

Whole document tree

FreeType_2.1.2 API Reference

FreeType_2.1.2 API Reference

Multiple Masters

The following types and functions are used to manage Multiple Master fonts, i.e. the selection of specific design instances by setting design axis coordinates.


FT_MM_Axis


  typedef struct  FT_MM_Axis_
  {
    FT_String*  name;
    FT_Long     minimum;
    FT_Long     maximum;

  } FT_MM_Axis;

A simple structure used to model a given axis in design space for Multiple Masters fonts.


fields
name

The axis's name.

minimum

The axis's minimum design coordinate.

maximum

The axis's maximum design coordinate.


FT_Multi_Master


  typedef struct  FT_Multi_Master_
  {
    FT_UInt     num_axis;
    FT_UInt     num_designs;
    FT_MM_Axis  axis[T1_MAX_MM_AXIS];

  } FT_Multi_Master;

A structure used to model the axes and space of a Multiple Masters font.


fields
num_axis

Number of axes. Cannot exceed 4.

num_designs

Number of designs; should ne normally 2^num_axis even though the Type 1 specification strangely allows for intermediate designs to be present. This number cannot exceed 16.

axis

A table of axis descriptors.


FT_Get_Multi_Master


  FT_EXPORT( FT_Error )
  FT_Get_Multi_Master( FT_Face           face,
                       FT_Multi_Master  *amaster );

Retrieves the Multiple Master descriptor of a given font.


input
face

A handle to the source face.

output
amaster

The Multiple Masters descriptor.

return

FreeType error code. 0 means success.


FT_Set_MM_Design_Coordinates


  FT_EXPORT( FT_Error )
  FT_Set_MM_Design_Coordinates( FT_Face   face,
                                FT_UInt   num_coords,
                                FT_Long*  coords );

For Multiple Masters fonts, choose an interpolated font design through design coordinates.


inout
face

A handle to the source face.

input
num_coords

The number of design coordinates (must be equal to the number of axes in the font).

coords

An array of design coordinates.

return

FreeType error code. 0 means success.


FT_Set_MM_Blend_Coordinates


  FT_EXPORT( FT_Error )
  FT_Set_MM_Blend_Coordinates( FT_Face    face,
                               FT_UInt    num_coords,
                               FT_Fixed*  coords );

For Multiple Masters fonts, choose an interpolated font design through normalized blend coordinates.


inout
face

A handle to the source face.

input
num_coords

The number of design coordinates (must be equal to the number of axes in the font).

coords

The design coordinates array (each element must be between 0 and 1.0).

return

FreeType error code. 0 means success.


generated on Sun Jun 23 13:01:54 2002