gfx/harfbuzz/TODO

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

mercurial