Class: Fontisan::Variation::Inspector
- Inherits:
-
Object
- Object
- Fontisan::Variation::Inspector
- Defined in:
- lib/fontisan/variation/inspector.rb
Overview
Inspects and analyzes variable font structure
This class provides comprehensive analysis of variable font structure, including axes, instances, regions, and variation statistics. Results can be exported to JSON or YAML formats.
Instance Attribute Summary collapse
-
#context ⇒ VariationContext
readonly
Variation context.
-
#font ⇒ TrueTypeFont, OpenTypeFont
readonly
Font to inspect.
Instance Method Summary collapse
-
#export_json ⇒ String
Export inspection results as JSON.
-
#export_yaml ⇒ String
Export inspection results as YAML.
-
#initialize(font) ⇒ Inspector
constructor
Initialize inspector.
-
#inspect_variation ⇒ Hash
Inspect complete variation structure.
-
#variable_font? ⇒ Boolean
Check if font is a variable font.
Constructor Details
#initialize(font) ⇒ Inspector
Initialize inspector
36 37 38 39 |
# File 'lib/fontisan/variation/inspector.rb', line 36 def initialize(font) @font = font @context = VariationContext.new(font) end |
Instance Attribute Details
#context ⇒ VariationContext (readonly)
Returns Variation context.
31 32 33 |
# File 'lib/fontisan/variation/inspector.rb', line 31 def context @context end |
#font ⇒ TrueTypeFont, OpenTypeFont (readonly)
Returns Font to inspect.
28 29 30 |
# File 'lib/fontisan/variation/inspector.rb', line 28 def font @font end |
Instance Method Details
#export_json ⇒ String
Export inspection results as JSON
58 59 60 |
# File 'lib/fontisan/variation/inspector.rb', line 58 def export_json JSON.pretty_generate(inspect_variation) end |
#export_yaml ⇒ String
Export inspection results as YAML
65 66 67 |
# File 'lib/fontisan/variation/inspector.rb', line 65 def export_yaml YAML.dump(inspect_variation) end |
#inspect_variation ⇒ Hash
Inspect complete variation structure
Returns comprehensive information about font variation capabilities.
46 47 48 49 50 51 52 53 |
# File 'lib/fontisan/variation/inspector.rb', line 46 def inspect_variation { axes: inspect_axes, instances: inspect_instances, regions: inspect_regions, statistics: calculate_statistics, } end |
#variable_font? ⇒ Boolean
Check if font is a variable font
72 73 74 |
# File 'lib/fontisan/variation/inspector.rb', line 72 def variable_font? @context.variable_font? end |