Class: Fontisan::Validation::ConsistencyValidator
- Inherits:
-
Object
- Object
- Fontisan::Validation::ConsistencyValidator
- Defined in:
- lib/fontisan/validation/consistency_validator.rb
Overview
ConsistencyValidator validates cross-table consistency
This validator ensures that references between tables are valid, such as cmap glyph references, hmtx entry counts, and variable font table consistency.
Single Responsibility: Cross-table data consistency validation
Instance Method Summary collapse
-
#initialize(rules) ⇒ ConsistencyValidator
constructor
Initialize consistency validator.
-
#validate(font) ⇒ Array<Hash>
Validate font consistency.
Constructor Details
#initialize(rules) ⇒ ConsistencyValidator
Initialize consistency validator
20 21 22 23 |
# File 'lib/fontisan/validation/consistency_validator.rb', line 20 def initialize(rules) @rules = rules @consistency_config = rules["consistency_checks"] || {} end |
Instance Method Details
#validate(font) ⇒ Array<Hash>
Validate font consistency
29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/fontisan/validation/consistency_validator.rb', line 29 def validate(font) issues = [] # Check hmtx consistency if enabled issues.concat(check_hmtx_consistency(font)) if should_check?("check_hmtx_consistency") # Check name table consistency if enabled issues.concat(check_name_consistency(font)) if should_check?("check_name_consistency") # Check variable font consistency if enabled issues.concat(check_variable_consistency(font)) if should_check?("check_variable_consistency") issues end |