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
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
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
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
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
Behdad Esfahbod
9682ef135f
Minor fixups
2018-02-08 17:35:57 -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
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
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
5021ba2a21
[aat] Minor
2018-02-08 15:11:28 -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
Behdad Esfahbod
39b86695cf
[subset] Fix thinko
2018-02-07 21:37:03 -06:00
Behdad Esfahbod
eeffabc875
Build
2018-02-07 21:34:05 -06:00
Behdad Esfahbod
c479a59988
[subset] Assemble font
2018-02-07 21:26:04 -06:00
Behdad Esfahbod
34ac3548b7
[set] Respect stride
...
Ouch!
2018-02-07 18:07:45 -06:00
Behdad Esfahbod
577becaf7b
[subset] Fixup
2018-02-07 17:38:40 -06:00
Behdad Esfahbod
c9acab3cfb
Whitespace
2018-02-07 17:28:43 -06:00
Behdad Esfahbod
7fd0b61dee
[subset] Create new face and copy all tables to it
...
test-subset fails now because subset-face does not know how to compile itself.
2018-02-07 17:28:43 -06:00
Garret Rieger
4e1abe2ce0
Refactor subset glyf to remove multiple calls to glyf.fini()
2018-02-07 17:28:43 -06:00
Garret Rieger
0a5d1440f8
Add implementation of glyf subsetting.
2018-02-07 17:28:43 -06:00
Garret Rieger
05d65baa1b
Extract glyf offset calculation into it's own method.
2018-02-07 17:28:43 -06:00
Behdad Esfahbod
6d7c6e19dc
Fix two undefined-behavior issues
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/761
Fixes https://github.com/harfbuzz/harfbuzz/issues/762
2018-02-07 14:09:56 -06:00
Behdad Esfahbod
b87cbe2bec
Try fixing build for platforms that have no visibility attributes
2018-02-07 14:11:26 -05:00
Behdad Esfahbod
6804b61d2e
[subset] Add hb_subset_face
...
It's a hb_face_t that has add_table() and in the future knows how to
compile itself into a font blob.
2018-02-07 13:47:35 -05:00
Behdad Esfahbod
af02812fc5
[subset] Change hb_subset API to remove hb_subset_face_t
2018-02-07 13:07:46 -05:00
Behdad Esfahbod
2da0d87e76
Remove NullPool visibility hack
...
We keep a separate private NullPool in libharfbuzz-subset.so
This can fire back later since now there are two separate null objects,
and comparisons to the null pool can be confused. Something to deal
with when it comes up. Ouch!
2018-02-07 12:44:35 -05:00
Rod Sheeter
b95aa204ee
glyph ids to retain should most likely keep the glyph id not the codepoint
2018-02-07 12:41:21 -05:00
Rod Sheeter
91428713bd
Remove \ns leftover from fprintf
2018-02-07 12:41:21 -05:00
Rod Sheeter
eb485bb9e9
Horrid hack to assign new gids. Use DEBUG_MSG over fprintf
2018-02-07 12:41:21 -05:00
Rod Sheeter
8b80cbb1dd
Add a subset debug category
2018-02-07 12:41:21 -05:00
Behdad Esfahbod
ee433d36fa
[aat] Set debug lookup_index
2018-02-07 12:41:21 -05:00
Rod Sheeter
38df1ec8e0
TEMPORARY: remove HB_INTERNAL from null pool so subset builds again
2018-02-07 12:41:21 -05:00
Garret Rieger
53aa0e9542
Add an instance of glyf::accelerator_t to hb-subset-glyf.
2018-02-07 12:41:21 -05:00
Rod Sheeter
ef62dfed3f
add back assert_pod
2018-02-07 12:41:21 -05:00