Commit Graph

5440 Commits

Author SHA1 Message Date
Behdad Esfahbod
d0f3e7f597 [util] Use setlinebuf() if present
To work around mysterious bug on OS X.

Fixes https://github.com/harfbuzz/harfbuzz/issues/727
2018-02-10 12:46:11 -06:00
Ebrahim Byagowi
ad575a5f47
Fix cast warnings on clang (#768) 2018-02-10 19:50:11 +03:30
Garret Rieger
d18decd201 In glyf subsetting add suport for writing out a short loca table when possible. 2018-02-09 18:41:21 -08:00
Rod Sheeter
9275bd03ea First pass at building a cmap 2018-02-09 17:40:52 -08:00
Garret Rieger
d2170d1478 Check for failures from add table. 2018-02-09 17:27:23 -08:00
Rod Sheeter
4816064c0e add missing return 2018-02-09 17:14:37 -08:00
Garret Rieger
0089443756 Keep a second set of glyph ids in subset plan which is sorted by glyph id and always has gid 0 2018-02-09 16:22:09 -08:00
Garret Rieger
3bc81558d8 Formatting for hb-subset-plan. 2018-02-09 16:06:33 -08:00
Behdad Esfahbod
8cef3a6199 Try fixing build with Sun Studio
Trying to fix:
https://circleci.com/gh/harfbuzz/harfbuzz/6635

Also part of:
https://github.com/harfbuzz/harfbuzz/issues/630
2018-02-09 16:04:23 -06:00
Garret Rieger
86aa4b3ba7 Return empty face on hb_subset failure instead of null. Plus some minor cleanups for _add_head_and_set_loca_version 2018-02-09 13:54:43 -08:00
Behdad Esfahbod
d45f240e4e Typo 2018-02-09 15:51:45 -06:00
Behdad Esfahbod
3b7aa651b4 [docs] Improve UNSAFE_TO_BREAK docs 2018-02-09 15:43:20 -06:00
bungeman
671f0a7733 Documentation for HB_GLYPH_FLAG_UNSAFE_TO_BREAK.
HB_GLYPH_FLAG_UNSAFE_TO_BREAK means that the glyph with this flag is somehow affected by the previous logical glyph (the previous index in the buffer if ltr and the next index if the buffer is rtl). If these two glyphs are separated by a break (line or otherwise) then the underlying text should be re-shaped on both sides up to corresponding position in the text of some glyph not marked with this flag.
2018-02-09 15:39:45 -06:00
Garret Rieger
1582eabee6 Update head table with loca format selected by glyf+loca subsetting. 2018-02-09 12:52:08 -08:00
Garret Rieger
335bbaa66f Remove uneeded code in hb-subset. 2018-02-09 10:55:15 -08:00
Behdad Esfahbod
3346ba9cd5 [test/text-rendering-tests] Update from upstream 2018-02-09 11:05:17 -06:00
Rod Sheeter
1cd98d05e0 Create the groups for a cmap format12. Does not yet build the actual table. 2018-02-08 19:39:57 -08:00
Rod Sheeter
59c658c8d5 capture codepoints sorted so we can use them for cmap later. one day we will have a map 2018-02-08 19:22:47 -08:00
Rod Sheeter
8431c38cdc remove output noise 2018-02-08 19:20:58 -08:00
Rod Sheeter
5cca0c07af fix comment 2018-02-08 19:05:46 -08:00
Rod Sheeter
a19138e668 comment the serialization of table 2018-02-08 19:04:06 -08:00
Garret Rieger
5a34114f96 Add an extra entry to the end of the loca table to identify the end of the last glyph's data. 2018-02-08 18:32:24 -08:00
Garret Rieger
aac7d96212 Apply per table subsetting while building the new face in hb_subset. 2018-02-08 18:18:16 -08:00
Garret Rieger
3e81832432 Disable subset tests on cmake for now. 2018-02-08 18:05:48 -06:00
Garret Rieger
2f94105311 Disable subset tests on cmake for now. 2018-02-08 15:55:12 -08:00
Behdad Esfahbod
e081c9e8fc Oops! 2018-02-08 17:44:24 -06:00
Behdad Esfahbod
1c49afe179 Whitespace 2018-02-08 17:38:58 -06:00
Behdad Esfahbod
9682ef135f Minor fixups 2018-02-08 17:35:57 -06:00
Garret Rieger
35eeb893ef Don't include subset headers in libharfbuzz. 2018-02-08 17:31:11 -06:00
Garret Rieger
42234424a0 Fix include gaurds and include order in hb-subset-glyf and hb-subset-plan 2018-02-08 17:31:11 -06:00
Garret Rieger
0f3c756cbf Add CMake config for building a separate harfbuzz-subset. 2018-02-08 17:31:11 -06:00
Garret Rieger
d4d120ad79 Skip subset to fonttools comparison test if TTX is not present. 2018-02-08 17:31:11 -06:00
Garret Rieger
29d915284e Whitespace 2018-02-08 17:31:11 -06:00
Garret Rieger
f9420d9eff In the hb-subset to fontTools comparison, use ttx to compare the fonts. This allows for some binary differences such as re-ordered tables. 2018-02-08 17:31:11 -06:00
Garret Rieger
8e9fd6f1ab Implement basic loca (long version only) subsetting. 2018-02-08 17:31:11 -06:00
Garret Rieger
f9c665fed1 Update interface to hb-subset-glyf to subset glyf and loca. 2018-02-08 17:31:11 -06:00
Garret Rieger
f2ceb5ee4d Comment out failing assert in test-subset-glyf for now. Should be re-enabled once hb_subset is writing out a new face. 2018-02-08 17:31:11 -06:00
Garret Rieger
89dbebd4ad Add a basic test for glyf subsetting. 2018-02-08 17:31:11 -06:00
Garret Rieger
217ed5e3c8 Cleanups in hb-subset-glyf and hb-subset-plan. 2018-02-08 17:31:11 -06:00
Rod Sheeter
13193a9b97 move to the hb_face_t dest pattern 2018-02-08 17:31:11 -06:00
Rod Sheeter
0859a00669 sketch a subset<T> and call it for cmap. Add subset to cmap, albeit not working even for the msot basic case just yet 2018-02-08 17:31:11 -06:00
Behdad Esfahbod
c1ab95dd90 Fix overflow in space fallback shaping
Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=657466
2018-02-08 17:22:07 -06:00
Behdad Esfahbod
b220b5a444 Avoid undefined-behavior in fallback mark positioning
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=5584
2018-02-08 17:14:52 -06:00
Behdad Esfahbod
3b68a03a1c [fuzzer] Minor 2018-02-08 17:00:37 -06:00
Behdad Esfahbod
194140d3f3 [util] Minor 2018-02-08 16:27:57 -06:00
Behdad Esfahbod
5021ba2a21 [aat] Minor 2018-02-08 15:11:28 -06:00
Behdad Esfahbod
1242ad8424 [test/text-rendering-tests] Update from upstream 2018-02-08 15:08:46 -06:00
Behdad Esfahbod
77ad8b5c8b TODO 2018-02-07 21:54:33 -06:00
Behdad Esfahbod
941bbd9f25 [subset] Fix thinko 2018-02-07 21:49:01 -06:00
Behdad Esfahbod
931f8b7eb5 Fix another thinko 2018-02-07 21:42:03 -06:00