sig
type type3_glpyhs = {
fontbbox : float * float * float * float;
fontmatrix : Transform.transform_matrix;
charprocs : (string * Pdf.pdfobject) list;
type3_resources : Pdf.pdfobject;
}
type simple_fonttype =
Type1
| MMType1
| Type3 of Pdftext.type3_glpyhs
| Truetype
type fontmetrics = int array
type fontdescriptor
type differences
type encoding =
ImplicitInFontFile
| StandardEncoding
| MacRomanEncoding
| WinAnsiEncoding
| MacExpertEncoding
| CustomEncoding of Pdftext.encoding * Pdftext.differences
| FillUndefinedWithStandard of Pdftext.encoding
type simple_font = {
fonttype : Pdftext.simple_fonttype;
basefont : string;
fontmetrics : Pdftext.fontmetrics option;
fontdescriptor : Pdftext.fontdescriptor option;
encoding : Pdftext.encoding;
}
type standard_font =
TimesRoman
| TimesBold
| TimesItalic
| TimesBoldItalic
| Helvetica
| HelveticaBold
| HelveticaOblique
| HelveticaBoldOblique
| Courier
| CourierBold
| CourierOblique
| CourierBoldOblique
| Symbol
| ZapfDingbats
type cid_system_info = {
registry : string;
ordering : string;
supplement : int;
}
type composite_CIDfont = {
cid_system_info : Pdftext.cid_system_info;
cid_basefont : string;
cid_fontdescriptor : Pdftext.fontdescriptor;
cid_widths : (int * int) list;
cid_default_width : int;
}
type cmap_encoding = Predefined of string | CMap of int
type font =
StandardFont of Pdftext.standard_font * Pdftext.encoding
| SimpleFont of Pdftext.simple_font
| CIDKeyedFont of string * Pdftext.composite_CIDfont *
Pdftext.cmap_encoding
val read_font : Pdf.pdfdoc -> Pdf.pdfobject -> Pdftext.font
type text_extractor
val text_extractor_of_font :
Pdf.pdfdoc -> Pdf.pdfobject -> Pdftext.text_extractor
val codepoints_of_text : Pdftext.text_extractor -> string -> int list
val utf16be_of_text : Pdftext.text_extractor -> string -> string
val latin1_string_of_text : Pdftext.text_extractor -> string -> string
val decode_char : Pdftext.encoding -> char -> char
val decode_type3_char : Pdftext.encoding -> char -> string
end