Behdad Esfahbod | 04a3023 | 2010-10-13 10:57:27 -0400 | [diff] [blame] | 1 | General fixes: |
| 2 | ============= |
| 3 | |
Behdad Esfahbod | 3ca9a6d | 2010-11-17 13:08:47 -0500 | [diff] [blame] | 4 | - Instead of forming clusters immediately, only do it if we are reversing |
Behdad Esfahbod | 4accc92 | 2011-04-07 15:53:26 -0400 | [diff] [blame] | 5 | the text. We'd need a separate bit to indicate cluster start then. |
Behdad Esfahbod | e0b0710 | 2011-05-11 08:58:21 -0400 | [diff] [blame] | 6 | |
| 7 | - Right now, BTW, for non-native direction runs, we get the cluster wrong... |
| 8 | Should do min(input-glyphs.cluster) |
Behdad Esfahbod | 3ca9a6d | 2010-11-17 13:08:47 -0500 | [diff] [blame] | 9 | |
Behdad Esfahbod | ff7cbd0 | 2011-05-25 09:56:06 -0400 | [diff] [blame] | 10 | - Fix TT 'kern' on/off and GPOS interaction (move kerning before GPOS) |
Behdad Esfahbod | 04a3023 | 2010-10-13 10:57:27 -0400 | [diff] [blame] | 11 | |
Behdad Esfahbod | 80dce8b | 2011-05-17 17:08:36 -0400 | [diff] [blame] | 12 | - Do proper rounding when scaling from font space? |
| 13 | |
Behdad Esfahbod | ff7cbd0 | 2011-05-25 09:56:06 -0400 | [diff] [blame] | 14 | - Adjust default features for vertical text: |
| 15 | |
| 16 | * vrt2 preferred over vert; but if user selects vert, turn vrt2 off? |
| 17 | * vkrn (enables vpal? vpal anyone???); |
| 18 | * valt: "This feature is mutually exclusive with all other glyph-height features (e.g. vhal and vpal), |
| 19 | which should be turned off when it's applied. It deactivates the kern." |
| 20 | |
| 21 | |
Behdad Esfahbod | 04a3023 | 2010-10-13 10:57:27 -0400 | [diff] [blame] | 22 | API issues to fix before 1.0: |
| 23 | ============================ |
| 24 | |
Behdad Esfahbod | 04a3023 | 2010-10-13 10:57:27 -0400 | [diff] [blame] | 25 | - Figure out how many .so objects, how to link, etc |
| 26 | |
Behdad Esfahbod | 4accc92 | 2011-04-07 15:53:26 -0400 | [diff] [blame] | 27 | - Add hb-cairo glue |
| 28 | |
Behdad Esfahbod | ff7cbd0 | 2011-05-25 09:56:06 -0400 | [diff] [blame] | 29 | - Add sanitize API (and a cached version, that saves result on blob user-data) |
| 30 | |
| 31 | - hb_shape() currently does a bit more than hb_ot_shape(). Shouldn't. |
Behdad Esfahbod | 4accc92 | 2011-04-07 15:53:26 -0400 | [diff] [blame] | 32 | |
Behdad Esfahbod | a5e4e10 | 2011-05-11 22:00:56 -0400 | [diff] [blame] | 33 | - Add glib GBoxedType stuff and introspection |
Behdad Esfahbod | 2d7b61a | 2011-04-20 16:40:56 -0400 | [diff] [blame] | 34 | |
Behdad Esfahbod | 04a3023 | 2010-10-13 10:57:27 -0400 | [diff] [blame] | 35 | |
| 36 | API to add (maybe after 1.0): |
| 37 | ============================ |
| 38 | |
Behdad Esfahbod | 1368018 | 2011-05-13 20:25:38 -0400 | [diff] [blame] | 39 | - BCP 47 language handling / API (language_matches?) |
| 40 | |
Behdad Esfahbod | 3994be3 | 2011-05-11 21:08:31 -0400 | [diff] [blame] | 41 | - Add hb_face_get_glyph_count()? |
| 42 | |
Behdad Esfahbod | 04a3023 | 2010-10-13 10:57:27 -0400 | [diff] [blame] | 43 | - Add hb_font_create_linear()? |
| 44 | |
| 45 | - Add hb_shape_plan()/hb_shape_execute() |
| 46 | |
Behdad Esfahbod | 04a3023 | 2010-10-13 10:57:27 -0400 | [diff] [blame] | 47 | - Add query API for aalt-like features? |
| 48 | |
Behdad Esfahbod | ab428ae | 2011-05-06 19:30:46 -0400 | [diff] [blame] | 49 | - SFNT api? get_num_faces? get_table_tags? (there's something in stash) |
Behdad Esfahbod | 04a3023 | 2010-10-13 10:57:27 -0400 | [diff] [blame] | 50 | |
| 51 | - Full matrix instead of scale? |
| 52 | |
Behdad Esfahbod | 04a3023 | 2010-10-13 10:57:27 -0400 | [diff] [blame] | 53 | - Add segmentation API |
| 54 | |
Behdad Esfahbod | 4accc92 | 2011-04-07 15:53:26 -0400 | [diff] [blame] | 55 | - Add hb-fribidi? |
Behdad Esfahbod | 04a3023 | 2010-10-13 10:57:27 -0400 | [diff] [blame] | 56 | |
| 57 | |
Behdad Esfahbod | eb5796f | 2011-04-27 12:14:53 -0400 | [diff] [blame] | 58 | hb-view enhancements: |
| 59 | ==================== |
| 60 | |
Behdad Esfahbod | eb5796f | 2011-04-27 12:14:53 -0400 | [diff] [blame] | 61 | - Add --format |
| 62 | - Add --width, --height, --auto-size, --align, etc? |
| 63 | - Port to GOption, --help |
| 64 | - Add XML and JSON formats |
| 65 | |
| 66 | |
Behdad Esfahbod | ee8dd83 | 2011-05-12 01:02:03 -0400 | [diff] [blame] | 67 | Tests to write: |
| 68 | ============== |
| 69 | |
| 70 | - ot-layout enumeration API (needs font) |
| 71 | |
Behdad Esfahbod | 5bf56ea | 2011-05-25 14:43:10 -0400 | [diff] [blame^] | 72 | - Finish test-shape.c |
| 73 | |
Behdad Esfahbod | ee8dd83 | 2011-05-12 01:02:03 -0400 | [diff] [blame] | 74 | |
Behdad Esfahbod | 04a3023 | 2010-10-13 10:57:27 -0400 | [diff] [blame] | 75 | Optimizations: |
| 76 | ============= |
| 77 | |
Behdad Esfahbod | 4accc92 | 2011-04-07 15:53:26 -0400 | [diff] [blame] | 78 | - Avoid allocating blob objects internally for for_data() faces? |
Behdad Esfahbod | 04a3023 | 2010-10-13 10:57:27 -0400 | [diff] [blame] | 79 | |
| 80 | - Add caching layer to hb-ft |