class TTFunk::Table::Vorg
Vertical Origin (‘VORG`) table.
Constants
- TAG
-
Table
tag.
Attributes
Number of vertical origin metrics. @return [Integer]
The default y coordinate of a glyph’s vertical origin. @return [Integer]
Table
major version. @return [Integer]
Table
minor version. @return [Integer]
Public Class Methods
Source
# File lib/ttfunk/table/vorg.rb, line 31 def self.encode(vorg) return unless vorg ''.b.tap do |table| table << [ vorg.major_version, vorg.minor_version, vorg.default_vert_origin_y, vorg.count, ].pack('n*') vorg.origins.each_pair do |glyph_id, vert_origin_y| table << [glyph_id, vert_origin_y].pack('n*') end end end
Encode table.
@return [String]
Public Instance Methods
Source
# File lib/ttfunk/table/vorg.rb, line 50 def for(glyph_id) @origins.fetch(glyph_id, default_vert_origin_y) end
Get vertical origina for glyph by ID.
@param glyph_id [Integer] @return [Integer]
Source
# File lib/ttfunk/table/vorg.rb, line 64 def origins @origins ||= {} end
Origins map.
@return [Hash{Integer => Integer}]
Private Instance Methods
Source
# File lib/ttfunk/table/vorg.rb, line 70 def parse! @major_version, @minor_version = read(4, 'n*') @default_vert_origin_y = read_signed(1).first @count = read(2, 'n').first count.times do glyph_id = read(2, 'n').first origins[glyph_id] = read_signed(1).first end end