package camlpdf

  1. Overview
  2. Docs
type transform_op =
  1. | Scale of float * float * float * float
  2. | Rotate of float * float * float
  3. | Translate of float * float
  4. | ShearX of float * float * float
  5. | ShearY of float * float * float
type transform = transform_op list
type transform_matrix = {
  1. a : float;
  2. b : float;
  3. c : float;
  4. d : float;
  5. e : float;
  6. f : float;
}
val string_of_trop : transform_op -> string
val string_of_transform : transform_op list -> string
val i : transform
val compose : transform_op -> transform_op list -> transform_op list
val append : transform -> transform -> transform
val i_matrix : transform_matrix
val string_of_matrix : transform_matrix -> string
exception NonInvertable
val matrix_invert : transform_matrix -> transform_matrix
val mktranslate : float -> float -> transform_matrix
val mkscale : (float * float) -> float -> float -> transform_matrix
val mkrotate : (float * float) -> float -> transform_matrix
val mkshearx : (float * float) -> float -> transform_matrix
val mksheary : (float * float) -> float -> transform_matrix
val matrix_of_op : transform_op -> transform_matrix
val transform_matrix : transform_matrix -> (float * float) -> float * float
val matrix_of_transform : transform_op list -> transform_matrix
val transform : transform_op list -> (float * float) -> float * float
val decompose : transform_matrix -> float * float * float * float * float * float
val recompose : float -> float -> float -> float -> float -> float -> transform_matrix