File: metric.mli

package info (click to toggle)
mlpost 0.8.1-3
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 1,776 kB
  • sloc: ml: 17,440; makefile: 469
file content (42 lines) | stat: -rw-r--r-- 1,518 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
type t = Tfm.t

(* convenience interface for font metrics *)

val char_width : t -> int -> float
(* [char_width t i] returns the width of the [i]th character of the font metric
   [t], [0] is the first character *)

val char_height : t -> int -> float
(* same as [char_width], but for character height *)
val char_depth : t -> int -> float
(* same as [char_width], but for character depth *)
val char_italic : t -> int -> float
(* same as [char_width], but for italic correction of the character *)

val char_dims : t -> int -> float * float * float
(** [scaled_dims metric i] returns the width, height and depth of the [i]th
 * char, slightly more efficient than invoking the other functions three times *)

val slant : t -> float
(** is the amount of italic slant, which is used to help position accents. For
  example, slant=.25 means that when you go up one unit, you also go .25 units
  to the right. *)

val space : t -> float
(** is the normal spacing between words in text. Note that character " " in the
   font need not have anything to do with blank spaces. *)

val space_stretch : t -> float
(** is the amount of glue stretching between words. *)

val space_shrink : t -> float
(** is the amount of glue shrinking between words. *)

val x_height : t -> float
(** is the height of letters for which accents don't have to be raised or
   lowered. *)

val quad : t -> float
(** is the size of one em in the font. *)
val extra_space : t -> float
(** is the amount added to [space] at the ends of sentences. *)