lib/ttfunk/subset/base.rb in ttfunk-1.6.2.1 vs lib/ttfunk/subset/base.rb in ttfunk-1.7.0
- old
+ new
@@ -52,41 +52,44 @@
def glyphs
@glyphs ||= collect_glyphs(original_glyph_ids)
end
def collect_glyphs(glyph_ids)
- collected = glyph_ids.each_with_object({}) do |id, h|
- h[id] = glyph_for(id)
- end
+ collected =
+ glyph_ids.each_with_object({}) do |id, h|
+ h[id] = glyph_for(id)
+ end
additional_ids = collected.values
- .select { |g| g && g.compound? }
- .map(&:glyph_ids)
- .flatten
+ .select { |g| g && g.compound? }
+ .map(&:glyph_ids)
+ .flatten
collected.update(collect_glyphs(additional_ids)) if additional_ids.any?
collected
end
def old_to_new_glyph
- @old_to_new_glyph ||= begin
- charmap = new_cmap_table[:charmap]
- old_to_new = charmap.each_with_object(0 => 0) do |(_, ids), map|
- map[ids[:old]] = ids[:new]
- end
+ @old_to_new_glyph ||=
+ begin
+ charmap = new_cmap_table[:charmap]
+ old_to_new =
+ charmap.each_with_object(0 => 0) do |(_, ids), map|
+ map[ids[:old]] = ids[:new]
+ end
- next_glyph_id = new_cmap_table[:max_glyph_id]
+ next_glyph_id = new_cmap_table[:max_glyph_id]
- glyphs.keys.each do |old_id|
- unless old_to_new.key?(old_id)
- old_to_new[old_id] = next_glyph_id
- next_glyph_id += 1
+ glyphs.each_key do |old_id|
+ unless old_to_new.key?(old_id)
+ old_to_new[old_id] = next_glyph_id
+ next_glyph_id += 1
+ end
end
- end
- old_to_new
- end
+ old_to_new
+ end
end
def new_to_old_glyph
@new_to_old_glyph ||= old_to_new_glyph.invert
end