Commit Graph

1206 Commits

Author SHA1 Message Date
Behdad Esfahbod
6334658fe7 Simplify mark skipping logic 2010-11-02 19:12:59 -04:00
Behdad Esfahbod
8c69e65abe Rename lookup_flags to lookup_props since it's more than just flags 2010-11-02 19:12:59 -04:00
Behdad Esfahbod
98370e89d1 WIP removing external synthesized GDEF support and implementing it internally 2010-11-02 19:12:58 -04:00
Behdad Esfahbod
870e2d6eac Remove unused function 2010-11-02 19:12:58 -04:00
Behdad Esfahbod
1115890b90 More cleanup 2010-11-02 19:12:58 -04:00
Behdad Esfahbod
dbf56b1d94 More lig-id cleanup 2010-11-02 19:12:58 -04:00
Behdad Esfahbod
f6a23a0b91 More removal of lig-id code from buffer 2010-11-02 19:12:58 -04:00
Behdad Esfahbod
dd2ffd282c Minor renaming 2010-11-02 19:12:58 -04:00
Behdad Esfahbod
fe263272a2 Move setting lig_id/component out of buffer and to the gsub code 2010-11-02 19:12:58 -04:00
Behdad Esfahbod
2e2b2480c0 Always allocate new ligature id
No practical point in reusing ligature ids.
2010-11-02 19:12:58 -04:00
Behdad Esfahbod
bf07d5a29c Set component=0 for ligature glyph 2010-11-02 19:12:58 -04:00
Behdad Esfahbod
37ab877149 Remove comment 2010-11-02 19:12:58 -04:00
Behdad Esfahbod
88474c6fda Get rid of the OpenType-specific internal buffer representation
Add variant integers to buffer item types.  More cleanup coming.
2010-11-02 19:12:58 -04:00
Behdad Esfahbod
6cb8c34930 Add hb_var_int_t 2010-11-02 19:12:57 -04:00
Behdad Esfahbod
f22802431a Remove trailing comma 2010-11-02 19:12:57 -04:00
Behdad Esfahbod
13528d0c78 Supposedly implement vertical support in GPOS
Not tested at all.
2010-10-27 14:09:27 -04:00
Behdad Esfahbod
9624de5b49 Clarify cursive_chain (and change its sign) 2010-10-27 13:44:59 -04:00
Behdad Esfahbod
d6c9eadb88 Remove more pointless LONGTERMTODO items 2010-10-27 12:34:50 -04:00
Behdad Esfahbod
e204674fe3 Rename hb_ot_layout_get_lig_carets() to hb_ot_layout_get_ligature_carets() 2010-10-27 12:32:02 -04:00
Behdad Esfahbod
3357d145f8 Implement vertical support in get_lig_carets() 2010-10-27 12:30:46 -04:00
Behdad Esfahbod
8eeed7eddc Remove LONGTERMTODO item that I'll never fix 2010-10-27 12:07:49 -04:00
Behdad Esfahbod
184a5279c6 Remove unused macro 2010-10-27 12:00:49 -04:00
Behdad Esfahbod
af5d02a269 Rewrite Cursive joining to act more like other pair lookups
Look forward for next character instead of joining to the last character.
2010-10-27 11:54:26 -04:00
Behdad Esfahbod
ea22c749c7 Fix Cursive positioning
Test case: "مرا" rendered using IranNastaliq.
2010-10-27 11:09:48 -04:00
Behdad Esfahbod
aefdb64689 Fix segfault with Arabic combining marks 2010-10-27 10:40:39 -04:00
Behdad Esfahbod
12b2d09a87 Remove obsolete TODO item
We don't cache any metrics internally, so the correct way to add more
glyph metrics items is to add new callbacks for them.  We already have
separeate callbacks for advance vs extents.
2010-10-27 01:28:28 -04:00
Behdad Esfahbod
248e3c2ba4 Oops, remove extra mask setting that broke complex shaping 2010-10-27 01:23:14 -04:00
Behdad Esfahbod
502f4cba3e Divide get_metrics into get_advance and get_extents
Graphite module not updated.
Bump version to 0.3.
2010-10-27 01:13:56 -04:00
Behdad Esfahbod
ec6c0e54d3 Fix blob leak 2010-10-26 11:28:14 -04:00
Behdad Esfahbod
bd7378b2ef Massage mask setting a bit more
Still finding the exact correct way the masks should be set.
2010-10-13 18:33:16 -04:00
Behdad Esfahbod
961f9baa7b Oops, actually set global mask 2010-10-13 17:17:00 -04:00
Behdad Esfahbod
39dede9fff Make sure boolean features always use value=1
Previously boolean features turned on the entire feature mask.  This is
wrong if feature is Alternate and user has provided values bigger than one.
Though, I don't think other engines support such corner cases.
2010-10-13 15:54:06 -04:00
Behdad Esfahbod
3506b2e78d Return early if mask is 0 2010-10-13 15:38:52 -04:00
Behdad Esfahbod
5c1c8c9c50 Make sure feature values don't leak out of their mask 2010-10-13 15:36:38 -04:00
Behdad Esfahbod
852912fc2d Fix applying default-value for features
Previously if a default global feature was overrided by a non-global
user feature, we were not setting any default mask for the feature,
essentially disabling the feature by default.  Fix that.
2010-10-13 15:34:50 -04:00
Behdad Esfahbod
2989be4919 Set user masks after complex masks 2010-10-13 15:18:29 -04:00
Behdad Esfahbod
a7820b7b15 Add TODO item 2010-10-13 14:20:48 -04:00
Behdad Esfahbod
04a3023a66 Cleanup TODO
Looks like a roadmap now.
2010-10-13 10:57:27 -04:00
Behdad Esfahbod
3111b8a0d5 Fix stupid bug, oops 2010-10-13 10:41:53 -04:00
Behdad Esfahbod
3703f88b74 Step the version up to 0.2 now that Arabic shaper is in 2010-10-12 18:34:20 -04:00
Behdad Esfahbod
758f68b860 Fix Arabic shaper
It's tested now.  It works!
2010-10-12 17:37:44 -04:00
Behdad Esfahbod
13403bc67a Hookup Arabic shaper!
Not tested yet.
2010-10-12 17:23:54 -04:00
Behdad Esfahbod
57ac0ecb78 Merge clearing masks and setting global masks 2010-10-12 17:07:02 -04:00
Behdad Esfahbod
fc96596b7c Form clusters before setting masks 2010-10-12 17:00:40 -04:00
Behdad Esfahbod
1e80782244 Clear masks before setting them up, not after! 2010-10-12 17:00:07 -04:00
Behdad Esfahbod
fd3d32d31c Add hb_ot_shape_execute()
Not public yet.
2010-10-12 16:57:47 -04:00
Behdad Esfahbod
49baa1f69e Add hb_ot_complex_shaper_t stuff and start hooking Arabic shaper up 2010-10-12 16:50:36 -04:00
Behdad Esfahbod
605ed468f3 Add hb_ot_shape_plan_t
This is the object that a separate plan/execute shaping API will use in
between the two stages.
2010-10-12 16:19:38 -04:00
Behdad Esfahbod
895fb5d364 Refactor, in a different direction 2010-10-12 16:00:21 -04:00
Behdad Esfahbod
d2ba016ca1 More refactoring 2010-10-12 15:35:45 -04:00