Sha256: 47eb335181bc565d957f0ba4ad369ff75ede597d968e4153c421b0262df8c761

Contents?: true

Size: 1.23 KB

Versions: 34

Compression:

Stored size: 1.23 KB

Contents

require 'ttfunk/table'

module TTFunk  
  class Table
    class Head < TTFunk::Table
      attr_reader :version
      attr_reader :font_revision
      attr_reader :checksum_adjustment
      attr_reader :magic_number
      attr_reader :flags
      attr_reader :units_per_em
      attr_reader :created
      attr_reader :modified
      attr_reader :x_min
      attr_reader :y_min
      attr_reader :x_max
      attr_reader :y_max
      attr_reader :mac_style
      attr_reader :lowest_rec_ppem
      attr_reader :font_direction_hint
      attr_reader :index_to_loc_format
      attr_reader :glyph_data_format

      def self.encode(head, loca)
        table = head.raw
        table[8,4] = "\0\0\0\0" # set checksum adjustment to 0 initially
        table[-4,2] = [loca[:type]].pack("n") # set index_to_loc_format
        return table
      end

      private

        def parse!
          @version, @font_revision, @check_sum_adjustment, @magic_number,
            @flags, @units_per_em, @created, @modified = read(36, "N4n2q2")
      
          @x_min, @y_min, @x_max, @y_max = read_signed(4)
      
          @mac_style, @lowest_rec_ppem, @font_direction_hint,
            @index_to_loc_format, @glyph_data_format = read(10, "n*")
        end
    end
  end
end

Version data entries

34 entries across 34 versions & 10 rubygems

Version Path
ttfunk-1.2.2 lib/ttfunk/table/head.rb
ttfunk-1.2.1 lib/ttfunk/table/head.rb
ttfunk-1.2.0 lib/ttfunk/table/head.rb
ttfunk-1.1.1 lib/ttfunk/table/head.rb
ttfunk-1.1.0 lib/ttfunk/table/head.rb
ttfunk-1.0.3 lib/ttfunk/table/head.rb
ttfunk-1.0.2 lib/ttfunk/table/head.rb
ttfunk-1.0.1 lib/ttfunk/table/head.rb
davebenvenuti-prawn-0.11.1.pre vendor/ttfunk/lib/ttfunk/table/head.rb
piglop-prawn-0.10.2.3 vendor/ttfunk/lib/ttfunk/table/head.rb
piglop-prawn-0.10.2.2 vendor/ttfunk/lib/ttfunk/table/head.rb
piglop-prawn-0.10.2.1 vendor/ttfunk/lib/ttfunk/table/head.rb
glyph_imager-0.1.1 vendor/ttfunk/lib/ttfunk/table/head.rb
prawn-0.11.1.pre vendor/ttfunk/lib/ttfunk/table/head.rb
goodwill-prawn-edge-0.10.0 vendor/ttfunk/lib/ttfunk/table/head.rb
alphasights-prawn-0.10.4 vendor/ttfunk/lib/ttfunk/table/head.rb
alphasights-prawn-0.10.3 vendor/ttfunk/lib/ttfunk/table/head.rb
alphasights-prawn-0.10.2 vendor/ttfunk/lib/ttfunk/table/head.rb
alphasights-prawn-0.10.1 vendor/ttfunk/lib/ttfunk/table/head.rb
glyph_imager-0.1.0 vendor/ttfunk/lib/ttfunk/table/head.rb