gfx/harfbuzz/TODO

Fri, 16 Jan 2015 18:13:44 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Fri, 16 Jan 2015 18:13:44 +0100
branch
TOR_BUG_9701
changeset 14
925c144e1f1f
permissions
-rw-r--r--

Integrate suggestion from review to improve consistency with existing code.

     1 General fixes:
     2 =============
     4 - Move feature parsing from util into the library
     6 - 'const' for getter APIs? (use mutable internally)
     8 - Fix TT 'kern' on/off and GPOS interaction (move kerning before GPOS)
    10 - Do proper rounding when scaling from font space?
    12 - Misc features:
    13   * init/medi/fina/isol for non-cursive scripts
    14   * vkna,hkna etc for kana, *jmo for hangul, etc
    16 - Move non-native direction and normalization handling to the generic non-OT
    17   layer, such that uniscribe and other backends can use.
    19 - Uniscribe backend needs to enforce one direction only, otherwise cluster
    20   values can confused the user.
    23 API issues to fix before 1.0:
    24 ============================
    26 - Rename all internal symbols (static ones even) to have _hb prefix?
    28 - Add pkg-config files for glue codes (harfbuzz-glib, etc)
    30 - Figure out how many .so objects, how to link, etc
    32 - Add hb-cairo glue
    34 - Add sanitize API (and a cached version, that saves result on blob user-data)
    36 - Add glib GBoxedType stuff and introspection
    39 API to add (maybe after 1.0):
    40 ============================
    42 - Add Uniscribe face / font get API
    44 - BCP 47 language handling / API (language_matches?)
    46 - Add hb_face_get_glyph_count()?
    48 - Add hb_font_create_linear()?
    50 - Add hb_shape_plan()/hb_shape_execute()
    52 - Add query API for aalt-like features?
    54 - SFNT api? get_num_faces? get_table_tags? (there's something in stash)
    56 - Add segmentation API
    58 - Add hb-fribidi?
    61 hb-view enhancements:
    62 ====================
    64 - Add --format
    65 - Add --width, --height, --auto-size, --align, etc?
    66 - Port to GOption, --help
    67 - Add XML and JSON formats
    70 Tests to write:
    71 ==============
    73 - ot-layout enumeration API (needs font)
    75 - Finish test-shape.c, grep for TODO
    77 - Finish test-unicode.c, grep for TODO
    80 Optimizations:
    81 =============
    83 - Avoid allocating blob objects internally for for_data() faces?
    85 - Add caching layer to hb-ft

mercurial