Behdad Esfahbod
21756934a1
[OT] Implement fallback positioning
...
Implemented for Arabic, Hebrew, and generic marks.
Activated if no GPOS table present.
2012-08-08 01:20:45 -04:00
Behdad Esfahbod
fb56e76283
[hb-old] Fix warnings
2012-08-07 23:44:47 -04:00
Behdad Esfahbod
affaf8a0e5
[OT] Start adding fallback positioning
...
Used when there is no GPOS.
2012-08-07 22:43:07 -04:00
Behdad Esfahbod
7e4920fd15
Minor
2012-08-07 22:32:23 -04:00
Behdad Esfahbod
472f229a63
[GSUB] Generalize would_apply()
...
Fixes logic also, where before we were always matching if glyphs_len==1
and a ligature started with the glyph.
2012-08-07 22:25:24 -04:00
Behdad Esfahbod
6f3a300138
Add hb_font_glyph_from/to_string
2012-08-07 22:13:25 -04:00
Behdad Esfahbod
eb56f6ae96
Minor
2012-08-07 21:44:25 -04:00
Behdad Esfahbod
f4e48adcdd
[OT] Apply 'rclt' feature in horizontal mode
...
'rclt' is "Required Contextual Forms" being proposed by Microsoft.
It's like 'calt', but supposedly always on. We apply 'calt' anyway,
and now apply this too.
2012-08-07 21:12:49 -04:00
Behdad Esfahbod
b1914b8bd0
Fix warnings
2012-08-07 16:57:48 -04:00
Behdad Esfahbod
0f8881d6bb
More refactoring
2012-08-07 16:57:02 -04:00
Behdad Esfahbod
428dfcab66
Minor refactoring
2012-08-07 16:51:48 -04:00
Behdad Esfahbod
61f41849af
Add Hebrew presentation forms shaping
...
Lifted from https://bugzilla.mozilla.org/show_bug.cgi?id=728866
2012-08-07 16:45:27 -04:00
Behdad Esfahbod
32d71dc133
[Graphite] Minor
2012-08-07 14:21:12 -04:00
Behdad Esfahbod
030ac5022e
Remove enum trailing comma
...
...again.
2012-08-07 13:01:12 -04:00
Behdad Esfahbod
368b4e7649
Minor
2012-08-06 23:06:04 -04:00
Behdad Esfahbod
ade7459ea7
[util] Fix leaks
2012-08-06 19:49:42 -07:00
Behdad Esfahbod
2fef993460
[Graphite] Fix graphite2 backend with RTL text
...
Patch from Martin Hosken.
2012-08-06 19:35:04 -07:00
Behdad Esfahbod
e4992e13e1
[Graphite] Port graphite2 backend to new shaper infrastructure
2012-08-06 19:29:53 -07:00
Behdad Esfahbod
66591ececf
Remove unnecessary lifecycle bits
...
We already set recount to INVALID when destroying.
This block was not necessary.
2012-08-06 17:07:19 -07:00
Behdad Esfahbod
e3320ecc1b
Fix compiler warnings
2012-08-06 11:44:42 -07:00
Behdad Esfahbod
167b625d98
[Indic] Minor, move 'blwf' after 'half'
...
We don't apply them together anyway. Should not make any difference
right now.
2012-08-05 21:16:26 -07:00
Behdad Esfahbod
048e3b596f
Speed up hb_set_digest_lowest_bits_t calcs
2012-08-04 20:46:45 -07:00
Behdad Esfahbod
3d1b66a35e
Speed up hb_set_digest_common_bits_t calcs
2012-08-04 17:42:28 -07:00
Behdad Esfahbod
bdc48a879a
Enlarge glyph_name buffer
...
Lohit Devanagari has a glyph named:
u0924_u094D.half_u0930_u094D.blwf.vatu
2012-08-04 17:08:38 -07:00
Behdad Esfahbod
25326c2359
Rewrite ARRAY_LENGTH as a template function
...
Such it wouldn't apply to pointers accidentally.
2012-08-04 16:43:18 -07:00
Behdad Esfahbod
8ba8042821
[Indic] Fix consonant position font lookup logic
...
Oops. I broken this badly and the test suite did not notice. That
worries me. Have to investigate.
2012-08-03 18:54:54 -07:00
Behdad Esfahbod
abd0c05f1f
Minor
2012-08-03 18:45:05 -07:00
Behdad Esfahbod
46ee108ef8
Fix leak
2012-08-03 18:21:13 -07:00
Behdad Esfahbod
71baea0062
[OT] Use general-category, not GDEF class, to decide to zero mark advances
...
At this point, the GDEF glyph synthesis looks pointless. Not that I
have many fonts without GDEF lying around.
As for mark advance zeroing when GPOS not available, that also is being
replaced by proper fallback mark positioning soon.
2012-08-03 17:40:07 -07:00
Behdad Esfahbod
3a7e137a68
Dn't use gint
2012-08-03 17:23:40 -07:00
Behdad Esfahbod
11b0e20ba4
[Indic] Add per-script configuration tables
...
This concludes the Indic shape_plan work. May do for Arabic also...
2012-08-02 14:21:40 -04:00
Behdad Esfahbod
85fc6c483f
[Indic] Move more stuff to the shape_plan
...
Almost done. Need to add per-script static tables.
2012-08-02 12:21:44 -04:00
Behdad Esfahbod
914ffaa40f
[Indic] Move more repeated work into shape_plan
2012-08-02 11:05:32 -04:00
Behdad Esfahbod
a8c6da90f4
[OT] Add per-complex-shaper shape_plan data
...
Hookup some Indic data to it. More to come.
2012-08-02 10:46:34 -04:00
Behdad Esfahbod
8bb5deba96
[OT] Pipe shape_plan down to pause_callbacks
2012-08-02 10:07:58 -04:00
Behdad Esfahbod
3e38c0f288
More massaging
2012-08-02 09:44:18 -04:00
Behdad Esfahbod
16c6a27b4b
[OT] Port complex_shaper to planner/plan
2012-08-02 09:38:28 -04:00
Behdad Esfahbod
5393e3a62b
[OT] Minor refactoring
2012-08-02 09:24:35 -04:00
Behdad Esfahbod
24eacf17c8
[Indic] Move consonant-position-setting into initial_reordering()
2012-08-02 08:42:51 -04:00
Behdad Esfahbod
afbcc24be0
[GSUB] Wire the font, not just the face, down to substitute()
...
We need the font for glyph lookup during GSUB pauses in Indic shaper.
Could perhaps be avoided, but at this point, we don't mean to support
separate substitute()/position() entry points (anymore), so there is
no point in not providing the font to GSUB.
2012-08-02 08:36:40 -04:00
Behdad Esfahbod
b0e6a26a10
[OT] Hide some API
...
It was impossible to meaningfully use them from the outside these days.
2012-08-02 08:11:14 -04:00
Behdad Esfahbod
305246744e
Minor
2012-08-02 08:08:04 -04:00
Behdad Esfahbod
8ef3d53255
[Indic] More refactoring of consonant position peeking in the font
...
To be moved to initial_reordering next...
2012-08-02 07:59:19 -04:00
Behdad Esfahbod
3eb6f81fd3
[Indic] Refactor
...
Move all the logic that needs to eventually move into the indic table
into hb-ot-shape-complex-indic-private.hh.
2012-08-02 07:38:39 -04:00
Behdad Esfahbod
3614ba242f
[Indic] Rename
2012-08-02 07:23:42 -04:00
Behdad Esfahbod
610e5e8f71
[Indic] Streamline feature would_apply()
...
Comes with some 10% speedup for Devanagari even!
2012-08-02 05:41:18 -04:00
Behdad Esfahbod
1d002048d5
[Indic] Minor
2012-08-02 05:02:53 -04:00
Behdad Esfahbod
6f76113755
[GSUB/GPOS] Check array size before accessing digests
2012-08-02 04:00:31 -04:00
Behdad Esfahbod
22148b8c4a
Use Coverage digests in would_apply
2012-08-02 03:51:51 -04:00
Behdad Esfahbod
6c459c8fef
Minor
2012-08-02 03:45:53 -04:00