sig
exception Too_many_colors
type 'a map = { mutable max : int; mutable map : 'a array; }
val size : 'a Color.map -> int
val find_exact : 'a Color.map -> 'a -> int
val add_color : 'a Color.map -> 'a -> int
val add_colors : 'a Color.map -> 'a list -> int list
val copy : 'a Color.map -> 'a Color.map
module Rgb :
sig
type t = { mutable r : int; mutable g : int; mutable b : int; }
val square_distance : Color.Rgb.t -> Color.Rgb.t -> int
val plus : Color.Rgb.t -> Color.Rgb.t -> Color.Rgb.t
val minus : Color.Rgb.t -> Color.Rgb.t -> Color.Rgb.t
val size : Color.Rgb.t Color.map -> int
val find_exact : Color.Rgb.t Color.map -> Color.Rgb.t -> int
val add_color : Color.Rgb.t Color.map -> Color.Rgb.t -> int
val add_colors : Color.Rgb.t Color.map -> Color.Rgb.t list -> int list
val find_nearest : Color.Rgb.t Color.map -> Color.Rgb.t -> int
end
type rgb =
Color.Rgb.t = {
mutable r : int;
mutable g : int;
mutable b : int;
}
module Rgba :
sig
type t = { color : Color.rgb; mutable alpha : int; }
val square_distance : Color.Rgba.t -> Color.Rgba.t -> int
val plus : Color.Rgba.t -> Color.Rgba.t -> Color.Rgba.t
val minus : Color.Rgba.t -> Color.Rgba.t -> Color.Rgba.t
val merge : Color.Rgba.t -> Color.Rgba.t -> Color.Rgba.t
val size : Color.Rgba.t Color.map -> int
val find_exact : Color.Rgba.t Color.map -> Color.Rgba.t -> int
val add_color : Color.Rgba.t Color.map -> Color.Rgba.t -> int
val add_colors :
Color.Rgba.t Color.map -> Color.Rgba.t list -> int list
val find_nearest : Color.Rgba.t Color.map -> Color.Rgba.t -> int
end
type rgba = Color.Rgba.t = { color : Color.rgb; mutable alpha : int; }
module Cmyk :
sig
type t = {
mutable c : int;
mutable m : int;
mutable y : int;
mutable k : int;
}
val square_distance : Color.Cmyk.t -> Color.Cmyk.t -> int
val plus : Color.Cmyk.t -> Color.Cmyk.t -> Color.Cmyk.t
val minus : Color.Cmyk.t -> Color.Cmyk.t -> Color.Cmyk.t
val size : Color.Cmyk.t Color.map -> int
val find_exact : Color.Cmyk.t Color.map -> Color.Cmyk.t -> int
val add_color : Color.Cmyk.t Color.map -> Color.Cmyk.t -> int
val add_colors :
Color.Cmyk.t Color.map -> Color.Cmyk.t list -> int list
val find_nearest : Color.Cmyk.t Color.map -> Color.Cmyk.t -> int
end
type cmyk =
Color.Cmyk.t = {
mutable c : int;
mutable m : int;
mutable y : int;
mutable k : int;
}
val rgb_square_distance : Color.rgb -> Color.rgb -> int
val plus : Color.rgb -> Color.rgb -> Color.rgb
val minus : Color.rgb -> Color.rgb -> Color.rgb
val brightness : Color.rgb -> int
val color_parse : string -> Color.rgb
val colormap_parse : string array -> Color.rgb array * int
end