Accepts an array of offsets, with each index corresponding to the glyph id with that index.
Returns a hash containing:
:table - the string representing the table's contents
:type - the type of offset (to be encoded in the 'head' table)
# File lib/ttfunk/table/loca.rb, line 15 def self.encode(offsets) if offsets.any? { |ofs| ofs > 0xFFFF } { :type => 1, :table => offsets.pack("N*") } else { :type => 0, :table => offsets.map { |o| o/2 }.pack("n*") } end end
# File lib/ttfunk/table/loca.rb, line 23 def index_of(glyph_id) @offsets[glyph_id] end
# File lib/ttfunk/table/loca.rb, line 27 def size_of(glyph_id) @offsets[glyph_id+1] - @offsets[glyph_id] end