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
37 38 39 40 |
# File 'lib/fontisan/variation/inspector.rb', line 37 def initialize(font) @font = font @context = VariationContext.new(font) end |
Instance Attribute Details
#context ⇒ VariationContext (readonly)
Returns Variation context.
32 33 34 |
# File 'lib/fontisan/variation/inspector.rb', line 32 def context @context end |
#font ⇒ TrueTypeFont, OpenTypeFont (readonly)
Returns Font to inspect.
29 30 31 |
# File 'lib/fontisan/variation/inspector.rb', line 29 def font @font end |
Instance Method Details
#export_json ⇒ String
Export inspection results as JSON
59 60 61 |
# File 'lib/fontisan/variation/inspector.rb', line 59 def export_json JSON.pretty_generate(inspect_variation) end |
#export_yaml ⇒ String
Export inspection results as YAML
66 67 68 |
# File 'lib/fontisan/variation/inspector.rb', line 66 def export_yaml YAML.dump(inspect_variation) end |
#inspect_variation ⇒ Hash
Inspect complete variation structure
Returns comprehensive information about font variation capabilities.
47 48 49 50 51 52 53 54 |
# File 'lib/fontisan/variation/inspector.rb', line 47 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
73 74 75 |
# File 'lib/fontisan/variation/inspector.rb', line 73 def variable_font? @context.variable_font? end |