Module: Fontisan::Subset::TableStrategy
- Defined in:
- lib/fontisan/subset/table_strategy.rb,
lib/fontisan/subset/table_strategy/os2.rb,
lib/fontisan/subset/table_strategy/cbdt.rb,
lib/fontisan/subset/table_strategy/cblc.rb,
lib/fontisan/subset/table_strategy/cmap.rb,
lib/fontisan/subset/table_strategy/glyf.rb,
lib/fontisan/subset/table_strategy/head.rb,
lib/fontisan/subset/table_strategy/hhea.rb,
lib/fontisan/subset/table_strategy/hmtx.rb,
lib/fontisan/subset/table_strategy/loca.rb,
lib/fontisan/subset/table_strategy/maxp.rb,
lib/fontisan/subset/table_strategy/name.rb,
lib/fontisan/subset/table_strategy/post.rb,
lib/fontisan/subset/table_strategy/pass_through.rb,
lib/fontisan/subset/table_strategy/glyf_loca_builder.rb,
lib/fontisan/subset/table_strategy/color_bitmap_placement.rb,
lib/fontisan/subset/table_strategy/color_bitmap_subsetter.rb,
lib/fontisan/subset/table_strategy/color_bitmap_strike_plan.rb,
lib/fontisan/subset/table_strategy/color_bitmap_subset_plan.rb,
lib/fontisan/subset/table_strategy/color_bitmap_subtable_plan.rb
Defined Under Namespace
Classes: Cbdt, Cblc, Cmap, ColorBitmapPlacement, ColorBitmapStrikePlan, ColorBitmapSubsetPlan, ColorBitmapSubsetter, ColorBitmapSubtablePlan, Glyf, GlyfLocaBuilder, Head, Hhea, Hmtx, Loca, Maxp, Name, Os2, PassThrough, Post
Constant Summary collapse
- REGISTRY =
Tag → strategy class name (resolved lazily via const_get to keep this file loadable in any order). Add new subsetting logic by adding one autoload + one entry here, plus a strategy file under
lib/fontisan/subset/table_strategy/. { "maxp" => :Maxp, "hhea" => :Hhea, "hmtx" => :Hmtx, "loca" => :Loca, "glyf" => :Glyf, "cmap" => :Cmap, "post" => :Post, "name" => :Name, "head" => :Head, "OS/2" => :Os2, "CBDT" => :Cbdt, "CBLC" => :Cblc, }.freeze
Class Method Summary collapse
-
.for(tag) ⇒ Class
Resolve a table tag to its strategy class.
Class Method Details
.for(tag) ⇒ Class
Resolve a table tag to its strategy class. Returns PassThrough for any tag without an explicit registration.
67 68 69 70 71 72 |
# File 'lib/fontisan/subset/table_strategy.rb', line 67 def self.for(tag) const_name = REGISTRY[tag] return PassThrough unless const_name const_get(const_name) end |