Garret Rieger
efcb7d3de1
[subset] close unicodes over bidi mirror variants during subsetting.
...
arm / arm-none-eabi (push) Waiting to run
configs-ci / build (push) Waiting to run
fontations / build (push) Waiting to run
linux-ci / build (push) Waiting to run
macos-ci / build (push) Waiting to run
msvc / msvc-2019-amd64 (push) Waiting to run
msvc / msvc-2019-x86 (push) Waiting to run
msys2 / CLANG64 (push) Waiting to run
msys2 / MINGW32 (push) Waiting to run
msys2 / MINGW64 (push) Waiting to run
Scorecard supply-chain security / Scorecard analysis (push) Failing after 3s
Fixes #5281 . Does the closure by default, but I've introduced a new flag and option to disable this behaviour since some users may want to get the minimal set if they know they don't need the mirrored variants.
2025-04-11 18:13:28 -06:00
Behdad Esfahbod
fd9903fc4e
[hb-subset] Try to fix leak
2025-04-06 16:20:23 -06:00
Behdad Esfahbod
00b4f86e5f
[hb-subset] In batch mode preprocess font once
...
Speeds up cmap.tests from 3s to under .5s.
2025-04-05 16:20:05 -06:00
Behdad Esfahbod
fa737da022
[hb-subset] Speed up parsing glyphs-file
...
Cache the font used to load glyph names.
2025-04-05 16:02:09 -06:00
Behdad Esfahbod
54295ccf45
[hb-subset] Speed up parsing glyphs-file
...
arm / arm-none-eabi (push) Waiting to run
configs-ci / build (push) Waiting to run
fontations / build (push) Waiting to run
linux-ci / build (push) Waiting to run
macos-ci / build (push) Waiting to run
msvc / msvc-2019-amd64 (push) Waiting to run
msvc / msvc-2019-x86 (push) Waiting to run
msys2 / CLANG64 (push) Waiting to run
msys2 / MINGW32 (push) Waiting to run
msys2 / MINGW64 (push) Waiting to run
Scorecard supply-chain security / Scorecard analysis (push) Failing after 1s
Cache the font used to load glyph names.
2025-04-05 15:26:07 -06:00
Behdad Esfahbod
0fecd2ecc3
[hb-subset] Accept gidXXX-style glyph names
2025-04-05 15:20:49 -06:00
Behdad Esfahbod
a637c08d5a
[hb-subset] Fix leak
2025-04-05 15:02:28 -06:00
Behdad Esfahbod
3207575979
[subset] Allow options before --font-file
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/4913
2025-04-04 18:13:36 -06:00
Behdad Esfahbod
59001aa952
[util] Add brief --help descriptions
...
Part of https://github.com/harfbuzz/harfbuzz/issues/5208
2025-03-26 12:33:06 -06:00
Behdad Esfahbod
3d3f241941
[util] Improve help messages a bit
...
arm / arm-none-eabi (push) Waiting to run
configs-ci / build (push) Waiting to run
fontations / build (push) Waiting to run
linux-ci / build (push) Waiting to run
macos-ci / build (push) Waiting to run
msvc / msvc-2019-amd64 (push) Waiting to run
msvc / msvc-2019-x86 (push) Waiting to run
msys2 / CLANG64 (push) Waiting to run
msys2 / MINGW32 (push) Waiting to run
msys2 / MINGW64 (push) Waiting to run
Scorecard supply-chain security / Scorecard analysis (push) Failing after 1s
Part of https://github.com/harfbuzz/harfbuzz/issues/5208
2025-03-26 01:18:09 -06:00
Behdad Esfahbod
39ea4cdd77
[hb-subset] Fix a resource leak
...
Part of https://github.com/harfbuzz/harfbuzz/issues/4832
2024-08-14 10:14:42 -07:00
Behdad Esfahbod
d5596dfb0b
[hb-subset] Report "Invalid font file."
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/4824#issuecomment-2272156543
2024-08-06 15:15:41 -06:00
Garret Rieger
4cf606f674
[instancer] Promote partial instancing api out of experimental.
2024-05-02 21:22:18 +00:00
Qunxin Liu
97309483ea
[instancer] rename HB_SUBSET_FLAGS_IUP_DELTA_OPT to HB_SUBSET_FLAGS_OPTIMIZE_IUP_DELTAS
2024-02-02 16:59:19 -08:00
Qunxin Liu
2dabbdfc66
[instancer] fix help message for --optimize
2024-02-02 13:39:33 -08:00
Qunxin Liu
c7a6030b31
[instancer] add a flag HB_SUBSET_FLAGS_IUP_DELTA_OPT
2024-01-26 09:27:27 -08:00
Garret Rieger
d30c1dacf5
Add test suite for instancing option parsing.
2023-11-15 20:16:07 +00:00
Garret Rieger
43236ce345
[instancer] add the option to leave blanks in the min:def:max syntax.
...
When parsing axis positions in the --variations flag recognize empty values as meaning the existing value for that part. For example:
:300:500
Specifies min = existing, def = 300, max = 500.
See: https://github.com/fonttools/fonttools/issues/3322
2023-11-15 17:54:56 +00:00
Garret Rieger
c6884377ec
[subset] Add HB_SUBSET_FLAGS_IFTB_REQUIREMENTS flag.
...
When enabled the output subset conforms to the requirements for a base font to be patched by IFTB patches. IFTB is a proposed incremental font transfer patch. This new flag is set as experimental. Currently, setting this flag causes the output subset to also use long offsets for outline data in loca/glyf, gvar, CFF, and CFF2.
This change is a version of 3ae2fe2084
rebased onto head w/ tests added.
2023-11-06 16:49:09 -07:00
Garret Rieger
7b46d772c4
[instancer] Update help message for --instance.
...
Remove note about partial instancing not being supported. Add --variations flag as an alternate name for --instance. This matches other hb utils.
2023-11-01 14:56:47 -06:00
Behdad Esfahbod
598de82f3a
[hb-subset] Fix warning
2023-10-27 12:13:13 -06:00
Qunxin Liu
0aa5dafefd
fix bots.
...
-Also disable partial instancing tests for now, cause the command option
is wrapped by experimental_api
2023-08-08 08:44:31 -07:00
Qunxin Liu
32cfa37e2e
[instancer] command line support for partial instancing
...
-Also updated hb_subset_input_set_axis_range (), so user can define
default value as well
2023-08-07 14:37:13 -07:00
Garret Rieger
3021b2dbe2
[subset] change glyph mapping api to return a mutable map.
...
Maintains consistency with our other set based api methods.
2023-05-05 05:57:05 +00:00
Garret Rieger
98e73192f4
[subset] Add command line flag to provide a gid mapping.
2023-05-04 22:20:06 +00:00
Garret Rieger
90356eb226
[subset] Note --no-layout-closure is only for GSUB.
2023-04-14 15:12:41 -06:00
Garret Rieger
14b9d8d534
[subset] add --no-layout-closure flag.
...
Disables layout glyph closure. Fixes #4192 .
2023-04-14 15:12:41 -06:00
Behdad Esfahbod
30d4a73473
[hb-subset] Adjust help for instancing
2023-01-06 16:00:53 -07:00
Behdad Esfahbod
aba6cbe867
[hb-subset] Adjust --help-all formatting
...
Meh.
2023-01-06 13:09:10 -07:00
Behdad Esfahbod
85e8f2b53f
[hb-subset] Initialize preprocess variable
2023-01-01 18:26:08 -07:00
Behdad Esfahbod
4a5bd7a926
[subset] Add hb_subset_input_keep_everything()
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/3998
New API:
+ hb_subset_input_keep_everything()
2023-01-01 16:53:28 -07:00
Behdad Esfahbod
d87add41b3
[hb-subset] Rename --preprocess-face to --preprocess
...
Keep old name working but hidden.
2023-01-01 16:27:26 -07:00
Garret Rieger
1a51f71afd
[subset] don't segfault when --help-all is specified w/ instancing options.
2022-12-19 16:02:05 -07:00
Garret Rieger
9fbe52b88d
[subset] enable instancing tests by default.
2022-12-12 20:24:24 +00:00
Garret Rieger
eda02c2ebd
[subset] Move hb_subset_preprocess to be non-experimental.
2022-12-08 16:32:24 -07:00
Behdad Esfahbod
1b86753031
[hb-subset] Support -u, -g, -t
...
For --unicodes, --gids, --text.
2022-12-05 11:44:52 -07:00
Garret Rieger
4c49daf7cd
[subset] actually use the preprocessed face in hb-subset.
...
Tests weren't actually using the preprocessed face due to this typo in util/hb-subset.
2022-11-23 22:33:57 +00:00
Garret Rieger
515863e57c
[subset] Remove add accelerator flag, replace with new api method.
...
Adds hb_subset_preprocess() which preprocesses the face and attaches accelerator data.
2022-10-13 23:42:00 +00:00
Garret Rieger
3394ec7048
[subset] use subset accelerator in tests.
...
This ensures it produces equivalent subsets as without the accelerator.
2022-10-13 23:02:54 +00:00
Behdad Esfahbod
a66ba594b4
[util] Fix stack-underflow
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/3737
2022-07-19 16:32:32 -06:00
Qunxin Liu
2a4773e43d
add option "--instance", store axes_location in subset_plan and drop all
...
variation tables when all axes are pinned at default
2022-07-18 14:59:07 -06:00
jfkthame
0cd404d0b8
Typo fix in hb-subset
...
s/substract/subtract/
2022-07-09 13:34:48 -06:00
Garret Rieger
38e81f2be9
[subset] Add --layout-scripts command line flag.
2022-06-30 21:09:11 +00:00
Cosimo Lupo
cc0f1f3b60
Expose --passthrough-tables option to hb-subset CLI tool
2022-04-12 10:40:46 -06:00
luz paz
e2e305066a
Fix various typos
...
Found via `codespell -q 3 -S ./perf/texts -L actualy,ba,beng,fo,gir,inout,nd,ot,pres,ro,te,teh,timne`
2022-01-16 05:39:03 -08:00
Garret Rieger
d700646c33
[subset] In preperation for 3.0.0 release remove legacy subsetting api methods.
2021-09-16 15:31:29 -06:00
Khaled Hosny
838d670752
[subset] Improve alignment of --help-all message
2021-09-08 15:12:52 +02:00
Behdad Esfahbod
04cf6212d7
[util/hb-subset] Fix --version and --help again
...
38ad093216
2021-08-30 18:35:26 -06:00
Behdad Esfahbod
38ad093216
[util/hb-subset] Don't ignore errors during face parsing
...
Was ignoring file-not-found errors.
2021-08-29 09:46:42 -06:00
Garret Rieger
1e1438c4fb
[subset] fix --*-file options in hb-subset. ( #3176 )
...
The previous change to add -/+ versions of each set type broke all of the --*-file input options since all of the parse functions now default to replacing the set if the + variant is not being used. This fixes the issue by changing parse_file_for to pass '+' as the name to the parsing function. This triggers the append mode.
2021-08-26 14:59:29 -06:00