Module Cairo.Font_face

module Font_face: sig .. end
Cairo.Font_face.t represents a particular font at a particular weight, slant, and other characteristic but no size, transformation, or size.

type 'a t 
A Cairo.Font_face.t specifies all aspects of a font other than the size or font matrix (a font matrix is used to distort a font by sheering it or scaling it unequally in the two directions). A font face can be set on a Cairo.context by using Cairo.Font_face.set; the size and font matrix are set with Cairo.set_font_size and Cairo.set_font_matrix.

Font faces are created using font-backend-specific constructors, or implicitly using the toy text API by way of Cairo.select_font_face.

There are various types of font faces, depending on the font backend they use. The type of a font face can be queried using Cairo.Font_face.get_type.

val set : Cairo.context -> 'a t -> unit
Replaces the current Cairo.Font_face.t object in the Cairo.context with font_face.
val get : Cairo.context -> Cairo.font_type t
Gets the current font face for a Cairo.context.
val get_type : 'a t -> Cairo.font_type
This function returns the type of the backend used to create a font face. See Cairo.font_type for available types. If 'a contains a single variant, it will be the returned value.
val create : ?family:string -> Cairo.slant -> Cairo.weight -> [ `Toy ] t
create family slant weight creates a font face from a triplet of family, slant, and weight. These font faces are used in implementation of the the cairo "toy" font API.

If family is not given or is the zero-length string "", the platform-specific default family is assumed. The default family then can be queried using Cairo.Font_face.get_family.

The Cairo.select_font_face function uses this to create font faces. See that function for limitations of toy font faces.

val get_family : [ `Toy ] t -> string
Gets the familly name of a toy font.
val get_slant : [ `Toy ] t -> Cairo.slant
Gets the slant a toy font.
val get_weight : [ `Toy ] t -> Cairo.weight
Gets the weight a toy font.