Qunxin Liu
95230e291d
[subset] support subsetting GSUB8
2021-03-29 15:54:11 -06:00
Qunxin Liu
0e1c0fa404
[subset] optimize glyph closure method: step 5
...
add testcase and some fixes
2021-03-17 15:22:07 -06:00
Garret Rieger
190b7a98f8
[subset] Update PairPosFormat2 subsetting to match fontTools updated subsetting ( https://github.com/fonttools/fonttools/pull/2221 )
...
- subset class def 1 against the coverage table.
- Don't re-use class 0 in class def 2.
- Ignore class 0 glyphs for the purposes of determing format 1 vs format 2 encoding for ClassDef.
Add an additional test case which demonstrates these issues.
2021-03-16 14:49:35 -07:00
Garret Rieger
08a4997fde
[subset] Add subset support for Extension lookups (GPOS 9, GSUB 7).
2021-02-11 13:41:31 -07:00
Behdad Esfahbod
c7d232ce4e
Merge pull request #2701 from googlefonts/Mark-To-Ligature_grieger
...
[subset] GPOS 5 MarkToLigature subsetting support
2021-02-10 18:13:38 -07:00
Qunxin Liu
3a0b05faf1
[subset] GPOS 5 MarkToLigature subsetting support
2020-10-01 15:59:16 -07:00
Garret Rieger
010accb3d5
[subset] Add additional test cases for the Amiri tests.
2020-09-28 17:39:09 -07:00
Garret Rieger
7b77ce0507
[subset] Add subsetting integration test using Amiri.
...
Demonstrates a failure in subsetting GPOS 8/GSUB 6.
2020-09-24 16:35:59 -07:00
Qunxin Liu
3c5bdd9bb8
[subset] GDEF AttachList subsetting support
2020-05-28 16:22:13 -07:00
Qunxin Liu
593e58c842
[subset] ChainContext subsetting fix: add lookup index remapping
2020-05-27 16:58:15 -07:00
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
8b5d3ebd96
[subset] GSUB5/GPOS7 Contextual Subst/Pos Subtbale Subsetting support
2020-05-20 15:12:54 -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
Qunxin Liu
e53c44e326
[subset] temporarily revert previous cmap commit
...
Required in https://github.com/harfbuzz/harfbuzz/issues/2356
2020-04-25 12:21:22 +04:30
Qunxin Liu
c8cc1e378d
fix issues in ClassDefFormat1 serialize:
...
glyph ids in Iterator may be non-consecutive,
so the number in classValue might be larger than length of the Iterator
2020-04-03 12:31:48 -07:00
Qunxin Liu
5ad761b943
[subset] GDEF MarkGlyphSets subsetting support
2020-02-26 15:15:21 -08:00
Qunxin Liu
fcd7f33bbb
[subset] GDEF glyphClassDef subsetting support
...
glyphClassDef uses the same ClassDef format. However, glyphClassDef table
uses predefined class values so we do not remap class values.
2020-02-26 11:10:31 -08:00
Garret Rieger
411225426f
Fix glyph closure for alternate substitution.
...
It was not filtering on the glyphs to be retained.
2020-02-21 13:01:23 +03:30
Qunxin Liu
eb7849a806
[subset] GPOS6 MarkToMark subsetting support
2020-02-06 10:46:05 -08:00
Qunxin Liu
82afc75835
[subset] GPOS4 MarkBase subsetting support
2020-02-06 10:46:05 -08:00
Ebrahim Byagowi
43253e404d
Merge remote-tracking branch 'upstream/master'
2020-02-05 17:45:19 +03:30
Ebrahim Byagowi
a7f694d4b0
Merge branch 'subset_cblc' into master
2020-02-05 16:31:21 +03:30
ckitagawa-work
774725b43a
[subset] Avoid incorrectly dropping cmap for NotoColorEmoji.ttf
...
NotoColorEmoji.ttf uses two cmap subtables
Format 14 | Platform ID 0 | Platform Encoding ID 5
Format 12 | Platform ID 3 | Platform Encoding ID 10
This combination results in the cmap table being dropped during subsetting despite being valid/required.
2020-02-05 16:13:10 +03:30
Qunxin Liu
490ef1cc23
[subset] Fix namerecord ordering
...
This will fix inconsistency with fontTools.
Also according to the spec, namerecords must be sorted
first by platform ID, then by platform-specific ID,
then by language ID, and then by name ID.
2020-02-01 23:07:47 +03:30
ckitagawa
e128f80278
parent 777ba47b50
...
author ckitagawa <ckitagawa@chromium.org> 1579631743 -0500
committer ckitagawa <ckitagawa@chromium.org> 1580506176 -0500
[subset] Add CBLC support
2020-01-31 16:37:30 -05:00
Qunxin Liu
b6a8f5e63c
[subset] CMAP table subsetting fix
...
Not all codepoints smaller than 0xFFFF go to cmap4 table.
Only subset codepoints existing in each table.
This will also make harfbuzz consistent with fontTools' behavior
2020-01-31 10:49:44 -08: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
c370da45ff
[subset] Cmap table: remove encodingRecord entry for empty cmap4 subtable
2020-01-23 17:23:55 -08:00
Qunxin Liu
a3cf4ae080
[subset] Add more tests for GPOS1 subsetting
...
These tests were left out because of issue: https://github.com/fonttools/fonttools/issues/1709
Now re-adding these tests since the issue is resolved.
2020-01-17 13:33:46 -08:00
Qunxin Liu
e565d1f9bc
[subset] subset lookup/feature/script lists for GSUB/GPOS
2020-01-15 14:04:33 -08:00
ckitagawa
78b50a67be
Address initial comments
2020-01-15 13:36:01 -08:00
ckitagawa
43b6c865ae
[subset] Support sbix subsetting
2020-01-15 13:36:01 -08:00
Qunxin Liu
1db2c1d0da
fix for cmap4 and OS_2 subsetting: maximum character code allowed is 0xFFFF
2020-01-09 10:00:32 -08:00
blueshade7
ea8fdfa079
Merge branch 'master' into var-subset
2019-11-22 15:59:09 -08:00
Qunxin Liu
1f0a9d9be9
[subset] GPOS Lookup Type 2: PairPos
2019-10-21 12:35:28 -07:00
Qunxin Liu
b66094ada0
[subset] GSUB Lookup Type 6: ChainContextSubst
2019-10-18 16:52:55 -07:00
Ebrahim Byagowi
19d45dcab7
Merge remote-tracking branch 'upstream/master' into var-subset
2019-10-03 13:39:17 +03:30
Qunxin Liu
b0c3eb06b6
[subset] GPOS Lookup Type 3: CursivePos
2019-09-25 05:43:25 +09:00
Qunxin Liu
bf66d1bf58
[subset] Add integration tests for cmap14
2019-09-20 07:55:11 +09:00
Ebrahim Byagowi
9ff32b79b3
Merge remote-tracking branch 'upstream/master' into glyf-rebase
2019-08-29 19:53:18 +04:30
Qunxin Liu
321d5588d4
[subset] Add subsetting for GPOS Lookup Type 1: Single Adjustment Positioning Subtable
2019-08-06 14:06:35 -07:00
blueshade7
a76d8b0d55
Merge commit '504bb17287c978d60a4a515555852465319f74ed' into var-subset
2019-07-17 14:12:06 -07:00
Qunxin Liu
1da1b4dc94
[subset] For option "--unicodes", add support for "*" to retain all code points
2019-07-15 11:18:50 -07:00
Michiharu Ariza
4ddab6facc
Merge branch 'master' into var-subset
2019-06-05 11:21:27 -07:00
Qunxin Liu
993d81b9c5
[subset] Add one ttf file with fvar/STAT tables to integration test
...
Ignore gvar/MVAR/HVAR table
add support for --nameIDs=* option
2019-05-22 17:20:45 -07:00
Garret Rieger
c740c8636b
[subset] Add integration tests for SingleSubst.
2019-05-21 13:02:11 -07:00
Michiharu Ariza
1223a352b7
Merge branch 'master' into var-subset
2019-04-29 16:43:48 -07:00
Qunxin Liu
6faac8df83
[subset] Subsetting Name Table Step 4
...
Add unit test and integration test
2019-04-26 15:24:47 -07:00
Michiharu Ariza
9e79285ef3
Merge branch 'master' into var-subset
2019-04-10 17:24:29 -07:00
Michiharu Ariza
e44b83aac0
replace test font SourceHanSans with its subet
2019-04-05 10:15:08 -07:00
Michiharu Ariza
fe5aa8b36c
added TT VF full font test & fixed bugs
...
updated CFF2 VF api test results too
2019-03-29 18:26:46 -07:00
Michiharu Ariza
9328354a83
separate CFF from TrueType in full font tests
2019-02-04 11:28:15 -08:00
Michiharu Ariza
c12862657f
added desubroutinize & retain-gids full test cases with CFF fonts
...
and CFF retain-gids fixes
2019-02-01 14:50:01 -08:00
Garret Rieger
a903f9c228
[subset] Add some subsetting integration tests covering retain gids.
2019-01-29 13:19:21 -08:00
Michiharu Ariza
1377adc8a8
Added SourceHanSans-Regular for CFF subset test
...
Disabled FDSelect serialization to format 0 for compatibility with fonttools
2018-09-19 17:00:10 -07:00
Michiharu Ariza
bf4eb2e4cf
Added SourceSansPro-Regular along as CFF full-font test case
...
derived "expected" subset fonts from fonttools then manually tweaked further so they resemble hb-subset output
2018-09-18 15:53:37 -07:00
Garret Rieger
535fb23c02
[subset] Add integration tests for cmap breakge.
2018-04-19 12:51:51 -06:00
Garret Rieger
c7d814eaa8
[subset] Add japanese font file to subset integration tests.
2018-03-08 13:44:04 -08:00
Garret Rieger
904dd7beea
[subset] Add drop hinting profile to full-font.tests
2018-02-27 17:23:44 -08:00
Garret Rieger
70a1049b3f
[subset] Add a drop hints profile to basics.tests
2018-02-27 17:23:44 -08:00
Garret Rieger
d31ace3274
[subset] Add subset integration tests using the full roboto font.
2018-02-27 17:23:44 -08:00
Garret Rieger
33f4381314
[subset] Add some more variations of the basic test.
2018-02-27 17:23:43 -08:00
Garret Rieger
0853260e99
Configure automake to run the new subset tests.
2018-02-04 12:57:33 -08:00
Garret Rieger
4cdae914e2
Add basic directory structure for subsetter integration tests. Plus a utility for generating expected output files.
2018-02-04 12:57:33 -08:00