dragonfly_fonts 0.0.8 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (39) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +7 -0
  3. data/README.md +16 -7
  4. data/dragonfly_fonts.gemspec +4 -2
  5. data/lib/dragonfly_fonts.rb +22 -1
  6. data/lib/dragonfly_fonts/analysers/bbox.rb +7 -5
  7. data/lib/dragonfly_fonts/analysers/font_info.rb +7 -2
  8. data/lib/dragonfly_fonts/analysers/glyphs.rb +12 -4
  9. data/lib/dragonfly_fonts/analysers/gsub_tables.rb +12 -4
  10. data/lib/dragonfly_fonts/analysers/ots_sanitize.rb +19 -0
  11. data/lib/dragonfly_fonts/plugin.rb +33 -8
  12. data/lib/dragonfly_fonts/processors/correct_metrics.rb +7 -4
  13. data/lib/dragonfly_fonts/processors/encode.rb +37 -23
  14. data/lib/dragonfly_fonts/processors/extract_glyph.rb +14 -10
  15. data/lib/dragonfly_fonts/processors/fix_dflt_table.rb +4 -1
  16. data/lib/dragonfly_fonts/processors/normalize_names.rb +6 -3
  17. data/lib/dragonfly_fonts/processors/ots_sanitize.rb +25 -0
  18. data/lib/dragonfly_fonts/processors/set_dimensions.rb +10 -6
  19. data/lib/dragonfly_fonts/processors/set_ttf_names.rb +9 -6
  20. data/lib/dragonfly_fonts/processors/set_underline.rb +10 -6
  21. data/lib/dragonfly_fonts/processors/set_width.rb +5 -2
  22. data/lib/dragonfly_fonts/processors/set_woff_metadata.rb +6 -3
  23. data/lib/dragonfly_fonts/processors/ttf_autohint.rb +6 -3
  24. data/lib/dragonfly_fonts/processors/web_friendly.rb +6 -3
  25. data/lib/dragonfly_fonts/version.rb +1 -1
  26. data/samples/sample.eot +0 -0
  27. data/samples/sample.otf +0 -0
  28. data/samples/sample.svg +1220 -0
  29. data/samples/sample.ttf +0 -0
  30. data/samples/{Inconsolata.ttx → sample.ttx} +0 -0
  31. data/samples/sample.woff +0 -0
  32. data/samples/sample.woff2 +0 -0
  33. data/samples/{AppleGothic.ttf → sample_not_sanitized.ttf} +0 -0
  34. data/script/glyphs.py +3 -3
  35. metadata +42 -9
  36. data/lib/dragonfly_fonts/analysers/ot_sanitise.rb +0 -17
  37. data/lib/dragonfly_fonts/processors/ot_sanitise.rb +0 -22
  38. data/samples/Arial.ttf +0 -0
  39. data/samples/Inconsolata.otf +0 -0
Binary file
File without changes
Binary file
Binary file
@@ -7,9 +7,10 @@ def main():
7
7
  font = fontforge.open(f)
8
8
 
9
9
  glyphs = []
10
-
10
+
11
11
  for (i,g) in enumerate(font.glyphs()):
12
12
  glyphs.append({
13
+ 'altuni': g.altuni,
13
14
  'glyphname': g.glyphname,
14
15
  'glyphclass': g.glyphclass,
15
16
  'script': g.script,
@@ -20,6 +21,5 @@ def main():
20
21
 
21
22
  print json.dumps(glyphs)
22
23
 
23
-
24
24
  if __name__ == '__main__':
25
- main()
25
+ main()
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dragonfly_fonts
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.8
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tomas Celizna
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-12-21 00:00:00.000000000 Z
11
+ date: 2018-07-14 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: activesupport
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: dragonfly
15
29
  requirement: !ruby/object:Gem::Requirement
@@ -94,6 +108,20 @@ dependencies:
94
108
  - - "~>"
95
109
  - !ruby/object:Gem::Version
96
110
  version: '5.0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: minitest-reporters
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
97
125
  - !ruby/object:Gem::Dependency
98
126
  name: rake
99
127
  requirement: !ruby/object:Gem::Requirement
@@ -116,6 +144,7 @@ extensions: []
116
144
  extra_rdoc_files: []
117
145
  files:
118
146
  - ".gitignore"
147
+ - CHANGELOG.md
119
148
  - Dockerfile
120
149
  - Gemfile
121
150
  - Guardfile
@@ -130,14 +159,14 @@ files:
130
159
  - lib/dragonfly_fonts/analysers/font_info.rb
131
160
  - lib/dragonfly_fonts/analysers/glyphs.rb
132
161
  - lib/dragonfly_fonts/analysers/gsub_tables.rb
133
- - lib/dragonfly_fonts/analysers/ot_sanitise.rb
162
+ - lib/dragonfly_fonts/analysers/ots_sanitize.rb
134
163
  - lib/dragonfly_fonts/plugin.rb
135
164
  - lib/dragonfly_fonts/processors/correct_metrics.rb
136
165
  - lib/dragonfly_fonts/processors/encode.rb
137
166
  - lib/dragonfly_fonts/processors/extract_glyph.rb
138
167
  - lib/dragonfly_fonts/processors/fix_dflt_table.rb
139
168
  - lib/dragonfly_fonts/processors/normalize_names.rb
140
- - lib/dragonfly_fonts/processors/ot_sanitise.rb
169
+ - lib/dragonfly_fonts/processors/ots_sanitize.rb
141
170
  - lib/dragonfly_fonts/processors/set_dimensions.rb
142
171
  - lib/dragonfly_fonts/processors/set_ttf_names.rb
143
172
  - lib/dragonfly_fonts/processors/set_underline.rb
@@ -147,10 +176,14 @@ files:
147
176
  - lib/dragonfly_fonts/processors/web_friendly.rb
148
177
  - lib/dragonfly_fonts/unicode_ranges.rb
149
178
  - lib/dragonfly_fonts/version.rb
150
- - samples/AppleGothic.ttf
151
- - samples/Arial.ttf
152
- - samples/Inconsolata.otf
153
- - samples/Inconsolata.ttx
179
+ - samples/sample.eot
180
+ - samples/sample.otf
181
+ - samples/sample.svg
182
+ - samples/sample.ttf
183
+ - samples/sample.ttx
184
+ - samples/sample.woff
185
+ - samples/sample.woff2
186
+ - samples/sample_not_sanitized.ttf
154
187
  - script/dimensions.py
155
188
  - script/font_info.py
156
189
  - script/glyphs.py
@@ -179,7 +212,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
179
212
  version: '0'
180
213
  requirements: []
181
214
  rubyforge_project:
182
- rubygems_version: 2.5.2
215
+ rubygems_version: 2.7.6
183
216
  signing_key:
184
217
  specification_version: 4
185
218
  summary: Wraps common font-related tasks into Dragonfly analysers and processors.
@@ -1,17 +0,0 @@
1
- require 'open3'
2
-
3
- module DragonflyFonts
4
- module Analysers
5
- class OtSanitise
6
- def call(font)
7
- `#{ot_sanitise_command} #{font.path} 2>&1`
8
- end
9
-
10
- private
11
-
12
- def ot_sanitise_command
13
- 'ots-sanitize'
14
- end
15
- end
16
- end
17
- end
@@ -1,22 +0,0 @@
1
- module DragonflyFonts
2
- module Processors
3
- # The OpenType Sanitiser (OTS) parses and serialises OpenType files (OTF, TTF) and WOFF and WOFF2 font files, validating them and sanitising them as it goes.
4
- class OtSanitise
5
- def call(content, _opts = {})
6
- content.shell_update(ext: content.ext || :ttf) do |old_path, new_path|
7
- "#{ot_sanitise_command} #{old_path} #{new_path}"
8
- end
9
- end
10
-
11
- def update_url(attrs, *_args)
12
- attrs.style = 'ot_sanitise'
13
- end
14
-
15
- private # =============================================================
16
-
17
- def ot_sanitise_command
18
- 'ots-sanitize'
19
- end
20
- end
21
- end
22
- end
Binary file
Binary file