class TTFunk::Table::OS2
def unicode_blocks_for(os2, original_field, subset)
def unicode_blocks_for(os2, original_field, subset) field = BitField.new(0) return field unless subset.unicode? subset_code_points = Set.new(subset.new_cmap_table[:charmap].keys) original_code_point_groups = group_original_code_points_by_bit(os2) original_code_point_groups.each do |bit, code_points| next if original_field.off?(bit) if code_points.any? { |cp| subset_code_points.include?(cp) } field.on(bit) end end field end