Garret Rieger
9aa0ecef3f
[subset] de-duplicate the logic that finds unicodes corresponding to requested glyphs.
...
Move the logic into subset planning and then re-use the results in cmap and OS2 subsetting. Removes depedency on cmap from os2.
2021-07-14 17:31:47 -07:00
Behdad Esfahbod
2337f0d047
Internally use hb_malloc/.../hb_free instead of malloc/.../free
...
Redefining those stock names as macros was conflicting with gcc 10
headers.
Fixes https://github.com/harfbuzz/harfbuzz/issues/3044
2021-07-08 10:54:09 -07:00
Qunxin Liu
eee7b459ee
[subset] add option --no-prune-unicode-ranges
2021-06-24 11:44:20 -07:00
Garret Rieger
26c80adb61
[subset] do colrv1 glyph closure before glyf composite closure.
2021-06-18 22:34:00 -07:00
Qunxin Liu
d07f789ae3
[subset] support option "--notdef-outline"
2021-06-18 15:35:02 -07:00
Behdad Esfahbod
bc33b87f5e
[set] Use references, not pointers, in internal C++ API
2021-06-09 11:54:12 -06:00
Qunxin Liu
cb5a6b5a27
[subset] support option --layout-features
2021-05-26 18:04:18 -06:00
Garret Rieger
73ff04a324
[subset] add option to have the subsetter set the mac overlaps flag on each glyph.
2021-05-26 16:04:56 -06:00
Qunxin Liu
f739e1dc6a
[subset] subset both CPAL and COLRv1
2021-05-26 15:39:42 -06:00
Dominik Röttsches
1dffb55361
Chromium build fixes for C++ 17 warning and missing _remap_indexes
...
Use class instead of typename, move _remap_indexes out of #ifndef.
Fixes #2979
2021-05-18 08:20:46 -06:00
Qunxin Liu
e59ffe5482
[subset] COLRv1 layer/palette indices closure
2021-05-12 15:29:53 -06:00
Garret Rieger
a08900b721
[subset] fix failing colrv0 subsetting when font has composite glyphs.
...
Composite glyph collection was happening along side colrv0 glyph collection which meant it was possible to miss grabbing the component glyphs for a glyph added by colrv0.
2021-05-10 15:33:54 -06:00
Garret Rieger
3c8273ab68
Check for alloc failures on the gsub/gpos_langsys maps in subset plan creation.
2021-03-25 16:53:56 -06:00
Qunxin Liu
56ca435787
[subset] fix for collect_features and remove_redundant_lamngsys
...
previously remove_redundant_sys () is missing in harfbuzz, after
redundant langsys removal, some features are removed as well in
prune_features() in fonttools. This change is trying to get the same
result between harfbuzz and fonttools.
2021-03-17 14:24:04 -07:00
Garret Rieger
aace09a3ad
[subset] Use glyphset gsub for layout variation indices collection.
2020-10-06 10:26:17 -07:00
Garret Rieger
718bf5aab3
[subset] only keep features reachable from script in the final subset.
...
Matches fontTools behaviour.
2020-09-29 13:16:01 -07:00
Ebrahim Byagowi
58a5961ca1
minor spacing tweak
2020-07-29 08:44:23 +04:30
Ebrahim Byagowi
07c43b8cf6
minor spacing tweak
2020-07-29 08:42:52 +04:30
Ebrahim Byagowi
5a7cc7fd8b
minor spacing tweak
2020-07-29 08:33:38 +04:30
Garret Rieger
dae32b4f12
[subset] bail out of subsetting if plan allocation fails.
2020-07-29 06:37:25 +04:30
Qunxin Liu
973c47f6c9
[subset] Move 2 experimental public api methods to be private methods in GSUB/GPOS.
...
2 methods are: hb_ot_layout_closure_lookups and hb_ot_layout_closure_features
2020-06-12 01:20:30 +04:30
Ebrahim Byagowi
22037499b4
[style] New experimental API, hb_style_get_value
...
Searches variation axes of a hb_font_t object for a specific axis first,
if not set, then tries to get default style values from different
tables of the font.
2020-06-04 20:33:39 +04:30
Qunxin Liu
d7c012a08e
[subset] GDEF Variation Store: step 2
...
do subset based on variation indices collected in step 1
2020-05-21 12:43:24 -07:00
Qunxin Liu
8200e48ffc
[subset] GDEF Variation Store: step 1
...
closure device variation indexes, create old->new variation idx mapping
and store them in subset-plan
2020-05-21 12:43:24 -07:00
Qunxin Liu
b2a965df5e
[subset] Add support for "--gids" option
...
cmap subsetting now retains entries associated with any glyph ids explicitly requested
2020-05-11 15:28:58 -07:00
Ebrahim Byagowi
29c903223b
Move hb_ot_layout_closure_{features,lookups} behind EXPERIMENTAL flag
2020-04-17 22:25:45 +04:30
ckitagawa
7d542a5274
Refactor to two iterators
2020-01-29 10:21:00 -05:00
ckitagawa
ed857c4680
[subset] Add COLR support
2020-01-28 15:35:53 -05:00
Qunxin Liu
36a5c042d7
[subset] Add "--name-languages" and "--name-legacy" options
...
Make name table subsetting consistent with fontTools
2020-01-24 23:17:04 +03:30
Ebrahim Byagowi
e171beeb5f
Revert "[subset] Add "--name-languages" and "--name-legacy" options"
...
Causes tests failures, please reapply when tests are fixed, thanks.
This reverts commit fd85818b5b
.
2020-01-24 19:51:32 +03:30
Qunxin Liu
fd85818b5b
[subset] Add "--name-languages" and "--name-legacy" options
...
Make name table subsetting consistent with fontTools
2020-01-23 17:24:05 -08:00
Qunxin Liu
8ffc9add22
[subset] layout closure_features and store them in subset-plan
2020-01-14 07:24:48 +03:30
Qunxin Liu
0b39c48064
[subset] closure lookups for GSUB/GPOS
2020-01-10 13:11:06 -08:00
blueshade7
ab525ac66d
fix HB_TINY buid
2019-11-26 18:34:06 +00:00
Behdad Esfahbod
7152ac3fcf
Fix build
...
$ make CPPFLAGS="-DHB_TINY -DHB_NO_OT_FONT" libharfbuzz-subset.la
2019-10-28 17:12:55 -07:00
Ebrahim Byagowi
be0eddd418
[glyf] Move add_gid_and_children to glyf table
2019-10-08 15:40:29 +03:30
Ebrahim Byagowi
c7621cf211
Minor, replace hb_set_add with private API
2019-10-08 15:40:29 +03:30
Ebrahim Byagowi
ad86806dcb
[glyf] Move subset related methods inside GlyphHeader
2019-10-08 15:40:29 +03:30
Ebrahim Byagowi
ee3f4630d7
[glyf] Remove get_composite_iter and refactor bytes_for_glyph for shape uses
2019-10-06 16:58:38 +03:30
Ebrahim Byagowi
8378ab96e2
[glyf] Rewrite composite iterator to new iterators convention
2019-10-06 13:49:45 +03:30
Ebrahim Byagowi
ead46eefe3
minor, use internal API instead public hb_set_has
2019-09-21 15:33:02 +04:30
Ebrahim Byagowi
d8af4e7701
[cmap] minor, turn 8 spaces to tab
2019-09-21 15:33:02 +04:30
Qunxin Liu
078ddbd0f6
[subset] glyph closure for CMAP14
2019-09-20 07:55:11 +09:00
Ebrahim Byagowi
a0b4ac4dce
Turn 8 spaces to tab across the project
...
According to the current code style of the project
2019-08-27 02:40:41 +04:30
Behdad Esfahbod
6157bbe512
Revert "Revert previous change"
...
This reverts commit b8e90ca1a1
.
Works now.
2019-07-17 11:20:08 -07:00
Ebrahim Byagowi
b8e90ca1a1
Revert previous change
...
Interestingly all of the bots disagreed with the change and the complain is... weird.
2019-07-17 21:38:19 +04:30
Ebrahim Byagowi
ee05627aff
Improve syntax to make out linux-arm64 a little happy
...
Decided to apply is we did the same on other places however this won't
fix all of its complains
2019-07-17 21:28:25 +04:30
Behdad Esfahbod
a849873124
[config] Add HB_NO_VAR to disable variations support, enabled by HB_TINY
...
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
2019-06-19 19:26:22 -07:00
Behdad Esfahbod
b0debc32f6
[subset] Simplify collect_name_ids
2019-06-19 18:42:51 -07:00
Behdad Esfahbod
a5897463d4
[config] Add HB_NO_STAT
...
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
2019-06-19 18:36:35 -07:00