Behdad Esfahbod
9cf7f9d4f6
Make test-size-params write size in points
2012-12-11 14:31:13 -05:00
Behdad Esfahbod
372fe2b67b
[OTLayout] Make hb_ot_layout_get_size_params() do some checks
2012-12-11 14:30:57 -05:00
Behdad Esfahbod
875a5cbc9c
[OTLayout] Change hb_ot_layout_get_params() API
...
And add implementation for StylisticSet UINameID. No API yet.
2012-12-11 14:17:01 -05:00
Behdad Esfahbod
0e9f0f3e5f
Fix atomic ops on iOS
...
Patch from John Ralls.
2012-12-10 15:25:21 -05:00
Behdad Esfahbod
5f9569c139
Make older MSVC happy
2012-12-10 13:39:06 -05:00
Behdad Esfahbod
071d5b831e
Work around missing OSAtomicCompareAndSwapPtrBarrier() on OS X 10.4
...
Not sure how to handle iOS.
2012-12-10 00:57:00 -05:00
Behdad Esfahbod
e923e6487b
[coretext] Fixed typo
...
Oops. Thanks Khaled for catching this.
2012-12-09 19:39:40 -05:00
Behdad Esfahbod
9a8395824b
[coretext] Add hb_coretext_face_get_cg_font()
...
Not sure if it's useful, but it was missing.
2012-12-09 18:47:36 -05:00
Behdad Esfahbod
8611235688
[coretext] Remove hack around GlyphID
...
We not namespace our types, so the hack is not needed anymore.
2012-12-09 18:47:09 -05:00
Behdad Esfahbod
8e58459aeb
[graphite2] "Update to new API"
...
Part of patch from Martin Hosken. I believe he knows what he's doing
:).
2012-12-09 18:45:47 -05:00
Behdad Esfahbod
a5a4ab3846
[graphite2] Add hb_graphite2_face_get_gr_face and hb_graphite2_font_get_gr_font
...
Based on patch from Martin Hosken. I believe it returns NULL if the
font doesn't have graphite tables, but have not tested.
2012-12-09 18:44:41 -05:00
Behdad Esfahbod
737ba15644
[graphite2] Preload all tables
...
Part of patch from Martin Hosken.
2012-12-09 18:43:03 -05:00
Behdad Esfahbod
0ae6dbf1b4
Minor
2012-12-09 18:37:38 -05:00
Behdad Esfahbod
3fe5c159d3
Remove excess return
...
Oops!
2012-12-09 18:20:19 -05:00
Behdad Esfahbod
ba2d543004
Update OT language tags
...
Patch from Roozbeh Pournader.
2012-12-08 19:28:41 -05:00
Behdad Esfahbod
aba38173c6
Minor
2012-12-05 19:54:48 -05:00
Behdad Esfahbod
61865745e3
Fix test with gold linker
...
Bug 57633 - Symbol tests should ignore __bss_start, _edata, _end
2012-12-05 19:42:10 -05:00
Behdad Esfahbod
b71b0bd9ee
[Indic] Add link to Sinhala split matra section of the Sinhala spec
2012-12-05 19:20:31 -05:00
Behdad Esfahbod
0beb66e3a6
Fix warnings
2012-12-05 19:14:28 -05:00
Behdad Esfahbod
130bb3f614
Rename VOID and void_t to have HarfBuzz prefix
...
Fixes build on Windows. Ouch!
2012-12-05 16:49:47 -05:00
Behdad Esfahbod
4a350d0eb2
[OTLayout] Reuse context in collect_glyphs() recursion
2012-12-04 17:13:09 -05:00
Behdad Esfahbod
8303593ba1
Minor
...
Use pointers instead of references, in preparation for upcoming change.
2012-12-04 17:08:41 -05:00
Behdad Esfahbod
1bcfa06d11
[OTLayout] Don't recurse in collect_glyphs() for GPOS
2012-12-04 16:58:09 -05:00
Behdad Esfahbod
b5e04c7dc6
[ucdn] Match upstream changes
2012-12-04 15:57:02 -05:00
Behdad Esfahbod
7babfe5a79
Move object mutext into the user-data array
...
We are not using it for anything lse it seems.
2012-12-04 00:35:54 +02:00
Behdad Esfahbod
a190011477
Remove unused functions
2012-12-04 00:29:35 +02:00
Behdad Esfahbod
88b7564183
"Update" to Unicode 6.2.0 tables
...
Nothing changed...
2012-12-02 19:14:29 +02:00
Behdad Esfahbod
4ab99fb8c3
Minor
2012-11-30 15:02:04 +02:00
Behdad Esfahbod
6748b96d27
Minor
2012-11-30 12:02:21 +02:00
Behdad Esfahbod
0f3f529904
Add test-size-params
...
Eventually this will become part of a yet-to-be-written hb-ot cmdline
tool.
2012-11-30 09:06:59 +02:00
Behdad Esfahbod
8465a05a89
Fix hb_buffer_guess_segment_properties() for empty buffer
...
Was causing assertion failure in shape_plan().
2012-11-30 08:46:43 +02:00
Behdad Esfahbod
e75943de80
[OTLayout] Fix collect_glyphs() recursion in ContextFormat3
2012-11-30 08:38:24 +02:00
Behdad Esfahbod
3038ae6adb
[OTLayout] Minor
2012-11-30 08:24:13 +02:00
Behdad Esfahbod
0dff11f6bf
[OTLayout] Look for any 'size' feature, not only in DFLT script
...
The old code doesn't work with all fonts, as Khaled has reported.
2012-11-30 08:14:20 +02:00
Behdad Esfahbod
e9ad71dee8
[OTLayout] Rename hb_ot_layout_position_get_size() to hb_ot_layout_get_size_params()
2012-11-30 08:10:26 +02:00
Behdad Esfahbod
f18ff5a84d
[OTLayout] Return correct value from recursion
...
Commit 4c4e8f0e75
broke contextual lookups
by making the recurse() function always return false.
Reported by Khaled. Test case: لا in Amiri.
2012-11-30 08:07:06 +02:00
Behdad Esfahbod
f54cce3c6a
[OTLayout] Implement 'size' feature
2012-11-26 14:02:31 +02:00
Behdad Esfahbod
2dc1141d7d
[OTLayout] Remove operator() from ClassDef
2012-11-24 19:16:34 -05:00
Behdad Esfahbod
b67881b171
[OTLayout] Remove operator() from Coverage
2012-11-24 19:13:55 -05:00
Behdad Esfahbod
a88e716021
[OTLayout] Implement hb_ot_layout_collect_lookups()
...
Untested.
2012-11-24 02:31:02 -05:00
Behdad Esfahbod
1ea375da44
[OTLayout] Only collect output glyphs during recursion in collect_glyphs()
2012-11-24 02:05:52 -05:00
Behdad Esfahbod
f1b12781d2
[OTLayout] Implement ChainContext collect_glyphs()
...
All of collect_glyphs() complete and untested now.
2012-11-24 02:02:01 -05:00
Behdad Esfahbod
cdd756b9f4
[OTLayout] Implement GPOS collect_glyphs()
2012-11-24 01:38:41 -05:00
Behdad Esfahbod
4c4e8f0e75
[OTLayout] Reuse apply context for recursion
2012-11-24 01:13:20 -05:00
Behdad Esfahbod
53a69f49e5
[OTLayout] Remove unused members
2012-11-24 01:03:05 -05:00
Behdad Esfahbod
d0a5233785
[OTLayout] Implement Context::collect_glyphs()
2012-11-23 18:54:59 -05:00
Behdad Esfahbod
26514d51b6
[OTLayout] More collect_glyphs()
2012-11-23 18:13:48 -05:00
Behdad Esfahbod
c6fb843f2a
[OTLayout] Templatize process_recurse_func
2012-11-23 18:04:08 -05:00
Behdad Esfahbod
9b34677f36
[OTLayout] Clean up closure() a bit
2012-11-23 17:55:40 -05:00
Behdad Esfahbod
adf7758a27
Improve debug log format in presence of templates
2012-11-23 17:34:02 -05:00
Behdad Esfahbod
2c53bd3c3e
[OTLayout] Start porting sanitize() to process()
2012-11-23 17:29:05 -05:00
Behdad Esfahbod
f48ec0e834
[OTLayout] Add process() tracing
2012-11-23 17:23:41 -05:00
Behdad Esfahbod
ed2e135944
[OTLayout] More Extension templatizing
2012-11-23 17:10:40 -05:00
Behdad Esfahbod
7dddd4e72b
[OTLayout] More templatizing Extension
2012-11-23 17:04:55 -05:00
Behdad Esfahbod
653eeb2645
Make Extension a template
2012-11-23 16:57:36 -05:00
Behdad Esfahbod
08f1eede1b
Minor
2012-11-23 16:51:43 -05:00
Behdad Esfahbod
2c9d6485a1
More tracing fixup
2012-11-23 16:49:19 -05:00
Behdad Esfahbod
a1733db1c6
[OTLayout] Start adding process() tracing
2012-11-23 16:40:04 -05:00
Behdad Esfahbod
73c18ae1b9
Cleanup
2012-11-23 15:34:11 -05:00
Behdad Esfahbod
be218c688c
Pass this object to trace macros
2012-11-23 15:32:14 -05:00
Behdad Esfahbod
902cc8aca0
[OTLayout] Start unbreaking tracing
2012-11-23 15:23:30 -05:00
Behdad Esfahbod
dabe698fcb
Minor
2012-11-23 14:21:35 -05:00
Behdad Esfahbod
c779d82b2f
Fix warnings
2012-11-23 14:09:21 -05:00
Behdad Esfahbod
81822528ef
Minor
2012-11-23 13:27:16 -05:00
Behdad Esfahbod
1d67ef980f
Move code around
2012-11-22 16:47:53 -05:00
Behdad Esfahbod
ec35a72a44
[OTLayout] Port apply() operator to process() template
2012-11-22 16:33:46 -05:00
Behdad Esfahbod
2005fa5340
[OTLayout] Port would_apply() and get_coverage() to process() templates
2012-11-22 16:33:46 -05:00
Behdad Esfahbod
44fc237b53
[OTLayout] Port closure() to process() template
2012-11-22 16:33:46 -05:00
Behdad Esfahbod
5be86b1bb4
[ucdn] Make data tables const!
2012-11-22 16:33:46 -05:00
Behdad Esfahbod
7c5b7fe686
Fix hb_shape_plan_get_shaper()
2012-11-22 16:33:46 -05:00
Behdad Esfahbod
ac064a2db2
Rename hb_set_population() to hb_set_get_population()
2012-11-21 01:14:19 -05:00
Behdad Esfahbod
16c914c2a6
[Indic] One more try at unbreaking Khmer fonts
...
See comments and discussion on the list.
2012-11-21 01:04:15 -05:00
Behdad Esfahbod
e8cfdd7fa8
Start implementing collect_glyphs() operation
...
Not functional yet.
2012-11-16 19:07:06 -08:00
Behdad Esfahbod
7d52e6601f
Whitespace
2012-11-16 18:49:54 -08:00
Behdad Esfahbod
51bb498b7b
Minor
2012-11-16 14:08:05 -08:00
Behdad Esfahbod
89ca8eeb83
Implement hb_ot_layout_get_glyphs_in_class()
2012-11-16 13:53:40 -08:00
Behdad Esfahbod
5a08ecf920
Implement hb_ot_layout_get_glyph_class()
2012-11-16 13:34:29 -08:00
Behdad Esfahbod
f9edd5d56b
Implement hb_shape_plan_get_shaper()
...
Untested.
2012-11-16 13:23:37 -08:00
Behdad Esfahbod
43b6531500
[Indic] Another try to unbreak Sinhala split matras
...
Just read the comments...
2012-11-16 13:14:26 -08:00
Behdad Esfahbod
977f1740ac
Unbreak tests
2012-11-16 13:10:07 -08:00
Behdad Esfahbod
eba312c8d1
Plumbing to get shape plan and font into complex decompose function
...
So we can handle Sinhala split matras smartly... Coming soon.
2012-11-16 12:58:38 -08:00
Behdad Esfahbod
3f82f8ff07
Rename hb_buffer_guess_properties() to hb_buffer_guess_segment_properties()
2012-11-15 18:48:10 -08:00
Behdad Esfahbod
f30641038b
Bunch of independent changes (ouch)
...
API additions:
hb_segment_properties_t
HB_SEGMENT_PROPERTIES_DEFAULT
hb_segment_properties_equal()
hb_segment_properties_hash()
hb_buffer_set_segment_properties()
hb_buffer_get_segment_properties()
hb_ot_layout_glyph_class_t
hb_shape_plan_t
hb_shape_plan_create()
hb_shape_plan_create_cached()
hb_shape_plan_get_empty()
hb_shape_plan_reference()
hb_shape_plan_destroy()
hb_shape_plan_set_user_data()
hb_shape_plan_get_user_data()
hb_shape_plan_execute()
hb_ot_shape_plan_collect_lookups()
API changes:
Rename hb_ot_layout_feature_get_lookup_indexes() to
hb_ot_layout_feature_get_lookups().
New header file:
hb-shape-plan.h
And a bunch of prototyped but not implemented stuff. Coming soon.
(Tests fail because of the prototypes right now.)
2012-11-15 18:48:10 -08:00
Behdad Esfahbod
e05a999495
Add hb_face_[sg]et_glyph_count()
2012-11-15 16:23:21 -08:00
Behdad Esfahbod
aec89de564
Add / modify set API a bit
2012-11-15 16:15:42 -08:00
Behdad Esfahbod
c54599ad26
Minor
2012-11-15 16:14:39 -08:00
Behdad Esfahbod
d1aa143ca4
[Thai] Remove U+0E2C from "AC" consonants
...
WinXP doesn't include it.
2012-11-15 15:38:08 -08:00
Behdad Esfahbod
362a990b22
Rename hb_ot_layout_would_substitute_lookup() and hb_ot_layout_substitute_closure_lookup()
...
To match upcoming API.
2012-11-15 14:57:31 -08:00
Behdad Esfahbod
3cec819d39
Make the OT shaper default, even if CoreText or Uniscribe is enabled
2012-11-15 13:15:39 -08:00
Behdad Esfahbod
072ae7a982
Add hb_buffer_serialize_list_formats()
2012-11-15 13:14:12 -08:00
Behdad Esfahbod
f9edf16725
Add buffer serialization / deserialization API
...
Two output formats for now: TEXT, and JSON. For example:
hb-shape --output-format=json
Deserialization API is added, but not implemented yet.
2012-11-15 13:10:07 -08:00
Behdad Esfahbod
fd0de881f4
Avoid C++ undefined behavior
...
https://bugzilla.mozilla.org/show_bug.cgi?id=810823
2012-11-15 10:48:50 -08:00
Behdad Esfahbod
f41dc2d35b
Fix undefined behavior in Indic dottedcircle
...
Chromium Issue 158998: Conditional jump in harfbuzz-ng
http://code.google.com/p/chromium/issues/detail?id=158998
2012-11-15 10:36:43 -08:00
Behdad Esfahbod
1eb3e94fe9
[Thai] Implement PUA-based fallback shaping
...
As explained here:
http://linux.thai.net/~thep/th-otf/shaping.html
Our output now matches Uniscribe for old fonts (eg. XP Tahoma) with no
Thai GSUB table.
2012-11-14 17:53:09 -08:00
Behdad Esfahbod
851784f837
Improve shaper selection
2012-11-14 17:53:09 -08:00
Behdad Esfahbod
43f04a7456
Move Thai shaper into a separate file
2012-11-14 15:51:54 -08:00
Behdad Esfahbod
ba82325b7a
Add note re 'Phags-pa letter U+A872, which is Joining_Type=L
2012-11-14 15:36:53 -08:00
Behdad Esfahbod
d469fadce8
[Indic] Exchange abort() for assert()
2012-11-14 15:07:36 -08:00
Behdad Esfahbod
0f80a89de9
Don't route Kharoshthi through the Indic shaper
...
It's a simple, right-to-left, script.
2012-11-14 15:05:19 -08:00
Behdad Esfahbod
e67072bb17
[Indic] Handle overstruck matra position
2012-11-14 15:00:53 -08:00