예제 #1
0
def update_ttx(in_file, out_file, image_dirs, prefix, ext, aliases_file):
  if ext != '.png':
    raise Exception('extension "%s" not supported' % ext)

  seq_to_file = collect_seq_to_file(image_dirs, prefix, ext)
  if not seq_to_file:
    raise ValueError(
        'no sequences with prefix "%s" and extension "%s" in %s' % (
            prefix, ext, ', '.join(image_dirs)))

  aliases = None
  if aliases_file:
    aliases = add_aliases.read_emoji_aliases(aliases_file)
    aliases = apply_aliases(seq_to_file, aliases)

  font = ttx.TTFont()
  font.importXML(in_file)

  lineheight = font['hhea'].ascent - font['hhea'].descent
  map_fn = get_png_file_to_advance_mapper(lineheight)
  seq_to_advance = remap_values(seq_to_file, map_fn)

  vadvance = font['vhea'].advanceHeightMax if 'vhea' in font else lineheight

  update_font_data(font, seq_to_advance, vadvance, aliases)

  font.saveXML(out_file)
예제 #2
0
def update_ttx(in_file, out_file, image_dirs, prefix, ext, aliases_file):
    if ext != '.png':
        raise Exception('extension "%s" not supported' % ext)

    seq_to_file = collect_seq_to_file(image_dirs, prefix, ext)
    if not seq_to_file:
        raise ValueError(
            'no sequences with prefix "%s" and extension "%s" in %s' %
            (prefix, ext, ', '.join(image_dirs)))

    aliases = None
    if aliases_file:
        aliases = add_aliases.read_emoji_aliases(aliases_file)
        aliases = apply_aliases(seq_to_file, aliases)

    font = ttx.TTFont()
    font.importXML(in_file)

    lineheight = font['hhea'].ascent - font['hhea'].descent
    map_fn = get_png_file_to_advance_mapper(lineheight)
    seq_to_advance = remap_values(seq_to_file, map_fn)

    vadvance = font['vhea'].advanceHeightMax if 'vhea' in font else lineheight

    update_font_data(font, seq_to_advance, vadvance, aliases)

    font.saveXML(out_file)
def get_inv_aliases():
  """Return a mapping from target to list of sources for all alias
  targets in either the default alias table or the unknown_flag alias
  table."""

  inv_aliases = collections.defaultdict(list)

  standard_aliases = add_aliases.read_default_emoji_aliases()
  for k, v in standard_aliases.iteritems():
    inv_aliases[v].append(k)

  unknown_flag_aliases = add_aliases.read_emoji_aliases(
      'unknown_flag_aliases.txt')
  for k, v in unknown_flag_aliases.iteritems():
    inv_aliases[v].append(k)

  return inv_aliases
예제 #4
0
def get_inv_aliases():
    """Return a mapping from target to list of sources for all alias
  targets in either the default alias table or the unknown_flag alias
  table."""

    inv_aliases = collections.defaultdict(list)

    standard_aliases = add_aliases.read_default_emoji_aliases()
    for k, v in standard_aliases.iteritems():
        inv_aliases[v].append(k)

    unknown_flag_aliases = add_aliases.read_emoji_aliases(
        'unknown_flag_aliases.txt')
    for k, v in unknown_flag_aliases.iteritems():
        inv_aliases[v].append(k)

    return inv_aliases