module Ftlow: sig
.. end
Almost all of the functions are just interpretation of functions of
the freetype library. See the documents of the freetype library.
type
library
val init : unit -> library
val close : library -> unit
type
face
type
face_info = {
|
num_faces : int ; |
|
num_glyphs : int ; |
|
family_name : string ; |
|
style_name : string ; |
|
has_horizontal : bool ; |
|
has_vertical : bool ; |
|
has_kerning : bool ; |
|
is_scalable : bool ; |
|
is_sfnt : bool ; |
|
is_fixed_width : bool ; |
|
has_fixed_sizes : bool ; |
|
has_fast_glyphs : bool ; |
|
has_glyph_names : bool ; |
|
has_multiple_masters : bool ; |
}
val new_face : library -> string -> int -> face
val face_info : face -> face_info
val done_face : face -> unit
val get_num_glyphs : face -> int
val set_char_size : face -> int -> int -> int -> int -> unit
val set_pixel_sizes : face -> int -> int -> unit
type
charmap = {
|
platform_id : int ; |
|
encoding_id : int ; |
}
val get_charmaps : face -> charmap list
val set_charmap : face -> charmap -> unit
val get_char_index : face -> int -> int
type
render_mode =
| |
Render_Normal |
| |
Render_Mono |
type
load_flag =
| |
Load_no_scale |
| |
Load_no_hinting |
val load_glyph : face -> int -> load_flag list -> int * int
val load_char : face -> int -> load_flag list -> int * int
val render_glyph_of_face : face -> render_mode -> unit
val render_glyph : face -> int -> load_flag list -> render_mode -> int * int
val render_char : face -> int -> load_flag list -> render_mode -> int * int
val set_transform : face -> int * int * int * int -> int * int -> unit
type
bitmap_info = {
|
bitmap_left : int ; |
|
bitmap_top : int ; |
|
bitmap_width : int ; |
|
bitmap_height : int ; |
}
val get_bitmap_info : face -> bitmap_info
val read_bitmap : face -> int -> int -> int
type
bbox = {
|
xmin : int ; |
|
ymin : int ; |
|
xmax : int ; |
|
ymax : int ; |
}
glyph metrics
type
bearing_advance = {
|
bearingx : int ; |
|
bearingy : int ; |
|
advance : int ; |
}
type
glyph_metrics = {
}
val get_glyph_metrics : face -> glyph_metrics
type
size_metrics = {
|
x_ppem : int ; |
|
y_ppem : int ; |
|
x_scale : int ; |
|
y_scale : int ; |
}
size metrics
val get_size_metrics : face -> size_metrics
type
outline_tag =
| |
On_point |
| |
Off_point_conic |
| |
Off_point_cubic |
outline info
type
outline_contents = {
|
n_contours : int ; |
|
n_points : int ; |
|
points : (int * int) array ; |
|
tags : outline_tag array ; |
|
contours : int array ; |
}
val get_outline_contents : face -> outline_contents