Behdad Esfahbod
eb44bfc864
[layout] Memoize collect_features
...
Fixes https://github.com/harfbuzz/harfbuzz/pull/1317
Fixes https://oss-fuzz.com/v2/testcase-detail/6543700493598720
6 years ago
Behdad Esfahbod
84098b1639
[layout] Remove unintentionally added code
6 years ago
Behdad Esfahbod
941600a9e0
[layout] Add hb_collect_features_context_t
...
Towards https://github.com/harfbuzz/harfbuzz/pull/1317
6 years ago
Behdad Esfahbod
c237cdfcc7
[lookup] Fold another function inline
6 years ago
Behdad Esfahbod
fe5520ddea
[layout] More prep work to memoize collect_features() work
6 years ago
Behdad Esfahbod
e8e67503ff
[lookup] More prep work for memoizing collect_features
...
https://github.com/harfbuzz/harfbuzz/pull/1317
6 years ago
Behdad Esfahbod
96828b97a8
[layout] Minor
...
We were returning the accelerator's lookup count. Returns table's.
They are the same except for OOM cases. Just shorter code.
6 years ago
Behdad Esfahbod
73449cd213
[layout] Fold one function inline
...
Preparation for fixing https://github.com/harfbuzz/harfbuzz/pull/1317
6 years ago
Behdad Esfahbod
ba5ca6a762
[morx] Use deleted-glyph, instead of actual deletion, in Ligation
...
Closer to what CoreText does.
Fixes https://github.com/harfbuzz/harfbuzz/issues/1302
6 years ago
Behdad Esfahbod
5c272e3613
[morx] Remove deleted-glyph at the end of processing
6 years ago
Behdad Esfahbod
1bb8ed86d6
[aat] Minor
6 years ago
Behdad Esfahbod
102af615f1
[aat] Start adding support for DELETED-GLYPH
...
https://github.com/harfbuzz/harfbuzz/issues/1302
6 years ago
Behdad Esfahbod
955aa56b11
[vector] Make it act more like pointer
...
Add pointer cast operator and plus operator.
6 years ago
Behdad Esfahbod
8d55e2adef
[set] Minor
6 years ago
Behdad Esfahbod
64c32edfe1
[set] Make array access more explicit
...
Follow up on 94e421abbf
6 years ago
Behdad Esfahbod
e3ceb2dde3
Fix again
6 years ago
Ebrahim Byagowi
eceeb85666
[docs] Add hb-ot-color section
6 years ago
Behdad Esfahbod
1cfe702872
Fixup
6 years ago
Behdad Esfahbod
5739c876d0
[test] Rename some fonts
...
If we have duplicae font files in different directories, that would
break the oss-fuzz build currently. So, rename some to avoid
name class with text-rendering-test. Would be better to find
another solution.
6 years ago
Behdad Esfahbod
21ede867df
Fix possible overflow in bsearch impls
...
From bungeman.
Fixes https://github.com/harfbuzz/harfbuzz/pull/1314
6 years ago
Ben Wagner
94e421abbf
Remove some use of Crap in hb-set.
...
When hb_set_t::page_for_insert needs to insert at the end of the page_map
it ends up evaluating '&page_map[i + 1]' which has hb_vector return an
lvalue of a Crap so that nothing can be moved to its address. This turns
into issues with ThreadSanitizer on Crap when two threads modify different
hb_set_t instances. This can be avoided by using '&page_map[i] + 1'
instead.
6 years ago
azure-pipelines[bot]
2798ac1c28
Set up CI with Azure Pipelines
6 years ago
Khaled Hosny
9a830a1731
[appveyor] Drop Cygwin builds again
...
They are so slow and we had only a couple of Cygwin build failure
reported in ~5 years.
6 years ago
Khaled Hosny
00e51a1083
[appveyor] Limit make to three jobs
...
https://github.com/harfbuzz/harfbuzz/pull/1309#issuecomment-432778270
6 years ago
Behdad Esfahbod
ae9e8f292b
[vowel-constraints] Reset continuation on all dottedcircles
...
One of the was missed before. Not intentional.
6 years ago
Khaled Hosny
d2b20ba18d
[appveyor] Build on Cygwin and msys2 in parallel
6 years ago
Khaled Hosny
0d2fa7fd4c
[appveyor] Do not update msys2
...
Looks like AppVeyor has new enough packages for our needs. Cuts CI build
time by 5 minutes.
6 years ago
Khaled Hosny
6a3ad24560
[appveyor] Organize config file a bit
6 years ago
Khaled Hosny
0cd7d041d8
[appveyor] Don’t build branches with open PR twice
6 years ago
Behdad Esfahbod
401cdf0792
[ot-font] Fix sign of ascent/descent
...
Some fonts, like msmincho, have positive number as descent
in vhea table. That's wrong. Just enforce sign on ascent/descent
when reading both horizontal and vertical metrics.
Fixes https://github.com/harfbuzz/harfbuzz/issues/1248
6 years ago
Behdad Esfahbod
ba502dea1e
[morx] Fix cluster-merging when ligating
...
Only merge when actual ligature happened.
Fixes https://github.com/harfbuzz/harfbuzz/issues/1305
6 years ago
Garret Rieger
aa5af8d041
Fix size calculation in DEFINE_SIZE_ARRAY_SIZED.
6 years ago
Behdad Esfahbod
f33ad6d692
[aat] Fix up previous commit and add files
6 years ago
Behdad Esfahbod
ffe3478448
[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
6 years ago
Behdad Esfahbod
8be0e5fd45
[ot-map] Minor
6 years ago
Behdad Esfahbod
e8fccbc36b
Minor
6 years ago
Behdad Esfahbod
76324d95ca
Shift code around
6 years ago
Behdad Esfahbod
cf92d6579e
[trak] Allow disabling tracking for ranges of text
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1303
6 years ago
Behdad Esfahbod
8869436cb8
When parsing feature ranges, accept ';' instead of ':'
6 years ago
Ebrahim Byagowi
22ecefd88e
Make tracking optout possible using 'trak' ot feature
...
So '--features=-trak' or 'font-feature-settings: 'trak' 0;' can prevent
applying of tracking if used.
6 years ago
Behdad Esfahbod
6d40eb8372
Touch up on previous commit
...
https://github.com/harfbuzz/harfbuzz/pull/1273
6 years ago
David Corbett
205737acdc
[use] Prohibit visually ambiguous vowel sequences
6 years ago
Behdad Esfahbod
48ed598a35
[VORG] Hook up to hb-ot-font's v_origin
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/544
Test added with NotoSansCJK, eg. with U+FF38.
6 years ago
Behdad Esfahbod
097ecfd4a9
[VORG] Add get_y_origin()
...
Unhooked.
6 years ago
Behdad Esfahbod
6fb24d5e3e
[VORG] Add VORG table
...
Cherry-picked from cff-subset branch.
6 years ago
Behdad Esfahbod
531f9822b2
[morx] Add a few debug messages to Ligature chain
6 years ago
Behdad Esfahbod
0e5bcdef7f
[morx] Clear stack upon underflow when acting ligatures
6 years ago
Behdad Esfahbod
1bfb96a9c8
[test/text-rendering-tests] Update from upstream
6 years ago
Behdad Esfahbod
792071de40
[morx] Leave ligature on stack after ligating
...
Test with Apple Color Emoji.ttf of ~66MB and following sequence:
./hb-shape Apple\ Color\ Emoji-old.ttf --font-funcs=ot -u U+1F468,200d,U+1F469,200d,U+1F467,200d,1f466
Should form full family if matching works correctly. It first makes
family of three, then makes family of four out of that and the last
two characters.
Fixes https://github.com/harfbuzz/harfbuzz/issues/1292
6 years ago
Ebrahim Byagowi
e1b8e933f0
[ci] Disable llvm-gcc
...
#define Null(Type) Null<typename hb_remove_const<typename hb_remove_reference<Type>::value>::value>()
raises:
hb-blob.cc: In function 'hb_blob_t* hb_blob_get_empty()':
hb-blob.cc:194: error: using 'typename' outside of template
hb-blob.cc:194: error: using 'typename' outside of template
Removing "typename"s fixes the issue but makes newer compiler fail apparently.
Probably downstream can patch that locally till we get a solution.
6 years ago