|
cd65305b
|
2019-06-26T14:57:48
|
|
[config] Don't disable emoji sequences in HB_TINY
It makes sense to disable this code these if editing is not needed.
However, this is also necessary to correctly display emoji sequences
in right-to-left direction. For that reason, don't auto-disable it.
|
|
5130c90a
|
2019-06-26T14:29:39
|
|
[config] Add HB_NO_EMOJI
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
|
|
2804790b
|
2019-06-26T13:38:14
|
|
[config] Add dependency
|
|
12092a46
|
2019-06-26T13:31:01
|
|
[config] Rename HB_NO_SHAPE_AAT to HB_NO_AAT_SHAPE
|
|
7aad5365
|
2019-06-26T13:21:03
|
|
[config] Add HB_NO_OT_SHAPE / HB_NO_OT
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
|
|
f4de0c77
|
2019-06-19T17:08:26
|
|
[config] Disable AAT map
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
|
|
d8bf6723
|
2019-06-19T17:04:16
|
|
[config] Disable more legacy kerning
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
|
|
43d7048d
|
2019-06-19T17:02:32
|
|
[config] More trak disabling
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
|
|
d84932ba
|
2019-06-19T16:57:48
|
|
[config] add HB_NO_OT_SHAPE_FRACTIONS, enabled in HB_LEAN
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
|
|
eaf4a736
|
2019-06-19T16:51:13
|
|
[config] Minor trak disable
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
|
|
588697af
|
2019-06-19T16:24:51
|
|
[config] Add HB_NO_OT_KERN, enabled by HB_MINI / HB_NO_LEGACY
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
|
|
231d0257
|
2019-06-18T14:25:52
|
|
[config] Don't compile AAT API if HB_NO_AAT
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
|
|
9e7c9c3a
|
2019-05-14T15:58:51
|
|
Fix -Wunused-function on HB_NO_SHAPE_AAT
We should add a bot for it
Part of #1652
|
|
809c5870
|
2019-05-13T14:45:51
|
|
[config] Better compile away morx/kerx/trak
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
|
|
799c6a50
|
2019-05-10T23:55:22
|
|
[config] Add some
|
|
2c93f0de
|
2019-05-10T23:31:05
|
|
Add HB_NO_AAT
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
|
|
41248cce
|
2019-05-07T20:54:31
|
|
Remove MIN/MAX in favor of hb_min/hb_max
|
|
30d7c40f
|
2019-02-09T02:55:27
|
|
Add a flag to hb_buffer_t to prevent the insertion of dotted circles on incorrect character sequences.
Current behavior unchanged if this flag is not set (and it isn't by default).
|
|
fd0889f9
|
2019-01-24T16:12:52
|
|
Comment
|
|
9f314177
|
2019-01-24T16:08:33
|
|
Form cluster for Emoji sub-region tag sequences
Fixes https://github.com/harfbuzz/harfbuzz/issues/1556
|
|
3ecda710
|
2019-01-24T12:08:23
|
|
Adjust mark offsets when zeroing from fallback mark positioning code
Adjust tests.
Fixes https://github.com/harfbuzz/harfbuzz/issues/1532
|
|
e4120085
|
2018-12-17T21:31:01
|
|
Remove redundant void from C++ sources (#1486)
|
|
000d4b12
|
2018-11-29T12:32:47
|
|
Make shaper's override_features() override user features as well
The override_features is used to override features that are normally
discretionary features, but in a specific shaper are for various
reasons desired to be bolted on or off, because they've been used
for inherent shaping. As such, it makes sense that they also
override user features. Ie. if user turned 'liga' on, we don't
want Khmer shaping to become broken... Or turn 'clig' off...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1310
|
|
74896226
|
2018-11-23T11:10:17
|
|
[aat] Disable mark advance zeroing if kern table has state-machines
Geeza Pro for example, relies on that for fancy mark positioning.
Fixes https://github.com/harfbuzz/harfbuzz/issues/1405
|
|
199a0f7b
|
2018-11-22T17:31:07
|
|
[ot-shape] Simplify logic
|
|
014e4980
|
2018-11-22T16:21:49
|
|
Move
|
|
62890dee
|
2018-11-22T16:20:29
|
|
[aat] Zero mark advances if decided so even if there's cross-kerning
Cross-kerning can only take care of positioning vertically. It doesn't
adjust mark advance...
|
|
a201fa74
|
2018-11-22T15:52:29
|
|
[aat] Tweak fallback positioning logic when applying morx
Such that for Indic-like scripts (eg. Khmer), we don't do any fallback mark
advance-zeroing / positioning, but we do for Latin, etc. Reuses preferences
of our script-specific OpenType shapers for those.
Fixes regression: https://github.com/harfbuzz/harfbuzz/issues/1393
Which means, fixes again: https://github.com/harfbuzz/harfbuzz/issues/1264
While not regressing: https://github.com/harfbuzz/harfbuzz/issues/1357
|
|
7a97f707
|
2018-11-16T14:46:40
|
|
Don't apply GPOS if applying morx
That's what Apple does, and it wouldn't degrade our OpenType performance.
Part of https://github.com/harfbuzz/harfbuzz/issues/1348
|
|
eafd5156
|
2018-11-16T14:45:56
|
|
Prefer morx table if GSUB is empty (no scripts)
Fixes https://github.com/harfbuzz/harfbuzz/issues/1348
|
|
ce5da0f3
|
2018-11-16T02:29:13
|
|
[shaper] Rewrite shaper data code to be more template-driven than macro-driven
|
|
c221dc0b
|
2018-11-14T14:49:34
|
|
[ot-shape] Move code around
|
|
3c3eb5ea
|
2018-11-13T21:10:10
|
|
[aat] Disable fallback mark advance zeroing and positioning if morx applied
Fixes https://github.com/harfbuzz/harfbuzz/issues/1357
|
|
cc842875
|
2018-11-12T18:48:10
|
|
[shape-plan] Cache shape plans with variations based on variation indices
|
|
10823385
|
2018-11-12T18:05:02
|
|
[shape-plan] Only use shape-plan key to initialize hb_ot_shape_plan_t
Such that we don't accidentally use info not in the cache key.
|
|
3e284e02
|
2018-11-11T22:51:34
|
|
[shape-plan] Minor
|
|
f521a28b
|
2018-11-11T21:32:01
|
|
Embed hb_ot_shape_plan_t into hb_shape_plan_t
No other shaper will need shape_plan_data, by definition. So, remove
abstraction layer and always create hb_ot_shape_plan_t as part of
hb_shape_plan_t.
|
|
1beacdde
|
2018-11-11T16:35:28
|
|
Minor
|
|
385f78b3
|
2018-11-07T17:19:21
|
|
[aat] Remove deleted-glyhs after applying kerx/kern
Finally: Fixes https://github.com/harfbuzz/harfbuzz/issues/1356
Test case:
$ ./hb-shape GeezaPro.ttc -u U+0628,U+064A,U+064E,U+0651,U+0629
[u0629.final.tehMarbuta=4+713|u064e_u0651.shaddaFatha=1@0,-200+0|u064a.medial.yeh=1+656|u0628.initial.beh=0+656]
The mark positioning (kern table CrossStream kerning) only works if deleted
glyph (as result of ligation) is still in stream and pushed through the
state machine.
|
|
ca23567f
|
2018-11-07T16:19:51
|
|
Disable fallback mark positioning if kern table has cross-stream kerning
Happens even if the cross-stream kerning is for cursive attachment only. Oh well..
|
|
5cf6f94d
|
2018-11-07T16:07:22
|
|
Don't apply both kerx and kern
Ouch!
|
|
41cff7af
|
2018-11-07T16:05:36
|
|
Minor
|
|
649cc3ef
|
2018-11-07T14:04:04
|
|
[kerx] Don't disable crossKerning if kern feature is off
|
|
0c3b061a
|
2018-11-07T13:58:41
|
|
[kern] Apply erlier, where GPOS/kerx are applied
|
|
914b595f
|
2018-11-05T22:39:50
|
|
[ot-face] Include hb-ot-face directly in hb_face_t
Simplifying access coming next.
|
|
17335a81
|
2018-11-04T02:25:07
|
|
Clean up buffer->swap_buffers() calls
That function checks for buffer->successful already. No need
to check at call site.
|
|
095f5add
|
2018-11-02T13:23:54
|
|
[kern] Push apply loop to each subtable
|
|
80d9a427
|
2018-10-27T04:58:32
|
|
[docs] Document remaining sections
|
|
39bd07ae
|
2018-10-26T21:01:11
|
|
Fix bunch of unused parameter warnings
Show up with gcc -O0.
There's a few more but those are functions that need to be filled in.
Maybe this is a lost battle...
|
|
f33ad6d6
|
2018-10-23T14:31:51
|
|
[aat] Fix up previous commit and add files
|
|
ffe34784
|
2018-10-23T14:14:03
|
|
[aat] Allow enabling/disabling features
Only works at entire-buffer range, not sub-ranges.
Test with:
$ hb-shape Zapfino.dfont Zapfino
[Z_a_p_f_i_n_o=0+2333]
$ hb-shape Zapfino.dfont Zapfino --features=-dlig
[Z=0+416|a=1@-21,0+264|p_f=2+433|i=4+181|n=5+261|o=6+250]
$ hb-shape Zapfino.dfont Zapfino --features=+dlig
[Z_a_p_f_i_n_o=0+2333]
Fixes https://github.com/harfbuzz/harfbuzz/issues/1303
|
|
76324d95
|
2018-10-23T13:09:30
|
|
Shift code around
|
|
cf92d657
|
2018-10-23T03:10:56
|
|
[trak] Allow disabling tracking for ranges of text
Fixes https://github.com/harfbuzz/harfbuzz/issues/1303
|
|
22ecefd8
|
2018-10-23T00:52:05
|
|
Make tracking optout possible using 'trak' ot feature
So '--features=-trak' or 'font-feature-settings: 'trak' 0;' can prevent
applying of tracking if used.
|
|
0b9d60e1
|
2018-10-11T13:26:58
|
|
[aat] Apply kerx if GPOS kern was not applied
Ned tells me this is what Apple does.
|
|
b59a428a
|
2018-10-11T13:24:17
|
|
Minor
|
|
d6a12dba
|
2018-10-11T11:10:06
|
|
[trak] Fix, and hook up
Works beautifully! Test coming.
|
|
34caadc5
|
2018-10-10T22:17:07
|
|
Ugh. Re-enable accidentally disabled GPOS
|
|
504cb68f
|
2018-10-10T21:29:46
|
|
Disable mark advance zeroing as well as mark fallback positioning if doing kerx
|
|
60f86d32
|
2018-10-10T18:10:05
|
|
[kerx] Don't loop over kerning subtables if kerning disabled
|
|
38a7a8a8
|
2018-10-10T17:44:46
|
|
Allow HB_OPTIONS=aat to prefer AAT tables over OT
Fixes https://github.com/harfbuzz/harfbuzz/issues/322
|
|
7727e737
|
2018-10-10T13:24:51
|
|
[kerx] Actually hook up, and fix crash
|
|
a03850a3
|
2018-10-10T10:57:28
|
|
Fix GPOS/kern interaction
Oops. Was checking for kern feature in GSUB, not GPOS.
|
|
d1be805e
|
2018-10-10T10:49:45
|
|
More rewriting plan compile
Hopefully more clear.
|
|
961ab46b
|
2018-10-10T10:42:10
|
|
More reshuffle plan compile
|
|
2091b509
|
2018-10-10T10:41:08
|
|
[kerx] Hook up to shaper
|
|
e655fd38
|
2018-10-10T10:16:09
|
|
Apply TT or fallback kerning when GPOS does not have kern feature
Previously we only did if there was no GPOS whatsoever. This applies
to Arial, Times New Roman, etc in Win7. Was not kerning before. It
is now.
|
|
53e55945
|
2018-10-09T22:35:22
|
|
[kerx] Implement Format0 apply()
Not hooked up to be called yet.
|
|
a5195881
|
2018-10-08T23:57:45
|
|
Apply TrueType/OpenType kern table when GPOS kern feature is not available
Fixes https://github.com/harfbuzz/harfbuzz/issues/250
|
|
09ad2613
|
2018-10-08T23:30:24
|
|
Separate fallback kern vs mark positioning
|
|
c0d3bf1b
|
2018-10-08T16:32:44
|
|
Minor
|
|
94368855
|
2018-10-07T18:52:12
|
|
Remove some code
We use scratch-flags to short-circuit this function. No need for previous
early loop.
|
|
71b65eb2
|
2018-10-07T18:41:52
|
|
Add API for setting invisible-codepoint
Fixes https://github.com/harfbuzz/harfbuzz/issues/1216
New API:
hb_buffer_set_invisible_codepoint()
hb_buffer_get_invisible_codepoint()
hb-shape / hb-view --invisible-codepoint
|
|
55942ad5
|
2018-10-06T14:49:44
|
|
Merge branch 'master' into cff-subset
|
|
a62f37d6
|
2018-10-05T02:49:29
|
|
Change vendor features from Harf/Buzz to HARF/BUZZ
https://github.com/harfbuzz/harfbuzz/commit/a01194aaf4c15160330b4042066263b2c963b658#commitcomment-30772041
"The tag space of tags consisting of four uppercase letters (A-Z) with no punctuation,
spaces, or numbers, is reserved as a vendor space. Font vendors may use such tags to
identify private features."
|
|
a01194aa
|
2018-10-04T13:00:37
|
|
Enable two OpenType features, 'Harf' and 'Buzz'
One early, before script-specific features, one late, after. Allows font
developers to detect us and behave differently if needed.
|
|
14ff3cbe
|
2018-10-04T11:34:21
|
|
Apply morx if there's no GSUB!
|
|
b710ea4f
|
2018-10-03T21:17:59
|
|
Clean Fitzpatrick hack
|
|
03fb6dd4
|
2018-10-03T21:02:16
|
|
Rewrite grapheme-formation in terms of new work
Also, don't attach ZWNJ to previous cluster. Closer to Unicode graphemes.
|
|
3b783185
|
2018-10-03T19:44:15
|
|
[emoji] Mark emoji contination sequences as continuation
This adds a new grapheme bit. Not used yet.
Part of https://github.com/harfbuzz/harfbuzz/issues/1159
|
|
123326e2
|
2018-10-03T19:19:51
|
|
Dotted-circle all marks, not just non-spacing, at text beginning
|
|
0a371fee
|
2018-10-02T14:48:39
|
|
Minor
|
|
94d15528
|
2018-10-02T14:45:09
|
|
Minor
|
|
729f6347
|
2018-10-02T14:40:14
|
|
Disable joiner-skipping when looking back for base to attach mark to
Fixes https://github.com/harfbuzz/harfbuzz/issues/1189
|
|
48c513fe
|
2018-10-02T14:17:42
|
|
Minor
|
|
cca757ae
|
2018-10-02T13:27:11
|
|
Minor
|
|
96eca87f
|
2018-10-02T13:24:40
|
|
Move things
|
|
10b6c7c6
|
2018-10-02T13:11:18
|
|
Minor include cleanup
|
|
1d1734e9
|
2018-10-02T13:04:05
|
|
Shuffle code around
|
|
d9867497
|
2018-09-24T18:11:59
|
|
Minor
|
|
f048ead8
|
2018-09-24T18:01:53
|
|
Some more
|
|
71c9f84e
|
2018-09-10T22:37:19
|
|
Make --features rand=1 available to the user
Use rand=255 to mean "randomize".
Part of https://github.com/harfbuzz/harfbuzz/pull/803
|
|
80de4bcd
|
2018-09-10T16:24:52
|
|
Minor clean up of 'rand' patchset
|
|
f05df643
|
2018-01-26T21:36:15
|
|
Allow requesting a specific glyph for 'rand'
Randomization only happens by default. If the user specifies a value for
'rand', that value is respected.
|
|
c2a75e07
|
2018-01-25T14:22:03
|
|
Implement 'rand'
|
|
b929100f
|
2018-08-26T01:15:47
|
|
[ot-face] Unify GSUB/GPOS accelerators in the table accelerator framework
|
|
c77ae408
|
2018-08-25T22:36:36
|
|
Rename hb-*private.hh to hb-*.hh
Sorry for the noise, downstream custom builders. Please adjust.
|
|
1c6b3693
|
2018-08-15T20:12:25
|
|
[ot] Rename hb_ot_layout_t to hb_ot_face_data_t
|
|
79e21984
|
2018-08-06T09:45:17
|
|
Add batch advance width callback function
New API:
+hb_font_funcs_set_glyph_h_advances_func
+hb_font_funcs_set_glyph_v_advances_func
+hb_font_get_glyph_h_advances
+hb_font_get_glyph_h_advances_func_t
+hb_font_get_glyph_v_advances
+hb_font_get_glyph_v_advances_func_t
|
|
9533364c
|
2018-08-01T13:01:08
|
|
batchwidth
|