ttfunk 1.4.0 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/CHANGELOG.md +114 -0
- data/{README.rdoc → README.md} +12 -8
- data/lib/ttfunk.rb +27 -21
- data/lib/ttfunk/collection.rb +41 -0
- data/lib/ttfunk/directory.rb +10 -4
- data/lib/ttfunk/encoding/mac_roman.rb +50 -40
- data/lib/ttfunk/encoding/windows_1252.rb +28 -22
- data/lib/ttfunk/reader.rb +11 -10
- data/lib/ttfunk/resource_file.rb +28 -21
- data/lib/ttfunk/subset.rb +5 -5
- data/lib/ttfunk/subset/base.rb +66 -38
- data/lib/ttfunk/subset/mac_roman.rb +11 -10
- data/lib/ttfunk/subset/unicode.rb +10 -8
- data/lib/ttfunk/subset/unicode_8bit.rb +16 -16
- data/lib/ttfunk/subset/windows_1252.rb +16 -15
- data/lib/ttfunk/subset_collection.rb +7 -8
- data/lib/ttfunk/table.rb +3 -5
- data/lib/ttfunk/table/cmap.rb +13 -13
- data/lib/ttfunk/table/cmap/format00.rb +8 -10
- data/lib/ttfunk/table/cmap/format04.rb +37 -32
- data/lib/ttfunk/table/cmap/format06.rb +16 -16
- data/lib/ttfunk/table/cmap/format10.rb +22 -17
- data/lib/ttfunk/table/cmap/format12.rb +28 -22
- data/lib/ttfunk/table/cmap/subtable.rb +30 -23
- data/lib/ttfunk/table/glyf.rb +13 -11
- data/lib/ttfunk/table/glyf/compound.rb +13 -10
- data/lib/ttfunk/table/glyf/simple.rb +5 -4
- data/lib/ttfunk/table/head.rb +13 -13
- data/lib/ttfunk/table/hhea.rb +13 -13
- data/lib/ttfunk/table/hmtx.rb +23 -18
- data/lib/ttfunk/table/kern.rb +57 -48
- data/lib/ttfunk/table/kern/format0.rb +18 -10
- data/lib/ttfunk/table/loca.rb +9 -9
- data/lib/ttfunk/table/maxp.rb +9 -9
- data/lib/ttfunk/table/name.rb +65 -56
- data/lib/ttfunk/table/os2.rb +21 -21
- data/lib/ttfunk/table/post.rb +32 -32
- data/lib/ttfunk/table/post/format10.rb +33 -27
- data/lib/ttfunk/table/post/format20.rb +10 -10
- data/lib/ttfunk/table/post/format30.rb +5 -5
- data/lib/ttfunk/table/post/format40.rb +3 -3
- data/lib/ttfunk/table/sbix.rb +19 -10
- metadata +55 -32
- metadata.gz.sig +0 -0
- data/CHANGELOG +0 -5
- data/data/fonts/DejaVuSans.ttf +0 -0
- data/examples/metrics.rb +0 -45
metadata.gz.sig
ADDED
Binary file
|
data/CHANGELOG
DELETED
data/data/fonts/DejaVuSans.ttf
DELETED
Binary file
|
data/examples/metrics.rb
DELETED
@@ -1,45 +0,0 @@
|
|
1
|
-
# encoding: utf-8
|
2
|
-
require_relative "../lib/ttfunk"
|
3
|
-
|
4
|
-
def character_lookup(file, character)
|
5
|
-
puts "character : #{character}"
|
6
|
-
|
7
|
-
character_code = character.unpack("U*").first
|
8
|
-
puts "character code: #{character_code}"
|
9
|
-
|
10
|
-
glyph_id = file.cmap.unicode.first[character_code]
|
11
|
-
puts "glyph id : #{glyph_id}"
|
12
|
-
|
13
|
-
glyph = file.glyph_outlines.for(glyph_id)
|
14
|
-
puts "glyph type : %s" % glyph.class.name.split(/::/).last.downcase
|
15
|
-
puts "glyph size : %db" % glyph.raw.length
|
16
|
-
puts "glyph bbox : (%d,%d)-(%d,%d)" % [glyph.x_min, glyph.y_min, glyph.x_max, glyph.y_max]
|
17
|
-
|
18
|
-
if glyph.compound?
|
19
|
-
puts "components : %d %s" % [glyph.glyph_ids.length, glyph.glyph_ids.inspect]
|
20
|
-
end
|
21
|
-
end
|
22
|
-
|
23
|
-
file = TTFunk::File.open(ARGV.first || "#{File.dirname(__FILE__)}/../data/fonts/DejaVuSans.ttf")
|
24
|
-
|
25
|
-
puts "-- FONT ------------------------------------"
|
26
|
-
|
27
|
-
puts "revision : %08x" % file.header.font_revision
|
28
|
-
puts "name : #{file.name.font_name.join(', ')}"
|
29
|
-
puts "family : #{file.name.font_family.join(', ')}"
|
30
|
-
puts "subfamily : #{file.name.font_subfamily.join(', ')}"
|
31
|
-
puts "postscript: #{file.name.postscript_name}"
|
32
|
-
|
33
|
-
puts "-- FONT METRICS ----------------------------"
|
34
|
-
|
35
|
-
puts "units/em : #{file.header.units_per_em}"
|
36
|
-
puts "ascent : #{file.ascent}"
|
37
|
-
puts "descent : #{file.descent}"
|
38
|
-
puts "line gap : #{file.line_gap}"
|
39
|
-
puts "bbox : (%d,%d)-(%d,%d)" % file.bbox
|
40
|
-
|
41
|
-
puts "-- SIMPLE CHARACTER -> GLYPH LOOKUP --------"
|
42
|
-
character_lookup(file, "\xE2\x98\x9C")
|
43
|
-
|
44
|
-
puts "-- COMPOUND CHARACTER -> GLYPH LOOKUP ------"
|
45
|
-
character_lookup(file, "ë")
|