Minimal TrueType parser for embedded PDF Type 0 fonts.
Summary
Types
@type t() :: %{ data: binary(), units_per_em: pos_integer(), number_of_glyphs: non_neg_integer(), unicode_to_gid: %{optional(non_neg_integer()) => non_neg_integer()}, widths: %{optional(non_neg_integer()) => non_neg_integer()}, bbox: [integer()], ascent: integer(), descent: integer(), cap_height: integer(), italic_angle: number(), postscript_name: binary(), flags: pos_integer(), index_to_loc_format: integer(), glyph_offsets: [non_neg_integer()], raw_tables: %{optional(binary()) => binary()} }
Functions
@spec expand_glyph_dependencies(t(), Enumerable.t()) :: MapSet.t(non_neg_integer())
@spec glyph_dependencies(t(), non_neg_integer()) :: [non_neg_integer()]
@spec glyph_id(t(), non_neg_integer()) :: {:ok, non_neg_integer()} | :error
@spec glyph_width(t(), non_neg_integer()) :: non_neg_integer()
@spec pdf_width(t(), non_neg_integer()) :: integer()