Behdad Esfahbod
b0abbfd868
[font] Centralize glyph-extents scaling
...
Needs more testing...
Some rounding was removed, namely in cff1 and cff2.
2022-12-22 07:32:15 -07:00
Behdad Esfahbod
206957aee4
[COLR] Change recursion limit back to 128
2022-12-17 08:57:56 -07:00
Matthias Clasen
a98c6fdd92
Mark an argument as unused
2022-12-16 13:23:01 -07:00
Matthias Clasen
601d3806c9
COLRv1: Revamp extents variation
...
Try to do this a cleaner way.
2022-12-16 13:23:01 -07:00
Behdad Esfahbod
6ae35365f8
Fix build
2022-12-16 11:43:38 -07:00
Behdad Esfahbod
e957391efe
[colr] Add NoVariable::varIdxBase
2022-12-16 11:33:04 -07:00
Behdad Esfahbod
e06de98c36
[var-common] Make VarInstancer take an offset
2022-12-16 11:31:00 -07:00
Behdad Esfahbod
251f9f6213
[open-type] Add VarIdx::add()
2022-12-16 11:29:51 -07:00
Behdad Esfahbod
bf2ae3f0ca
[open-type] Add static_assert for NO_VARIATION
2022-12-16 11:26:24 -07:00
Matthias Clasen
d4496e6405
COLRv1: Apply variations correctly
...
The variations are for xMin, yMin, xMAx, yMax.
Apply them before converting to extents..
2022-12-16 11:14:42 -07:00
Behdad Esfahbod
4e9a6cfb49
[COLR] Use VarStoreInstancer
2022-12-12 10:20:51 -07:00
Behdad Esfahbod
c64661b2f8
[COLR] Fix variation code
2022-12-12 10:11:02 -07:00
Behdad Esfahbod
ff332b14ea
[COLR] Handle HB_OT_LAYOUT_NO_VARIATIONS_INDEX
2022-12-11 21:05:14 -07:00
Behdad Esfahbod
9a3f0be291
[COLR] Apply variations in get_extent
2022-12-11 13:40:53 -07:00
Behdad Esfahbod
68964efa55
[COLR] Use bsearch in get_extents
2022-12-11 13:21:01 -07:00
Behdad Esfahbod
d0ee5a452f
[COLR] Return false from get_extents if table version not 1
2022-12-11 13:13:35 -07:00
Behdad Esfahbod
b3d6a5ef86
[colr] Minor no behavior change
2022-12-11 13:12:30 -07:00
Matthias Clasen
7a748ad4ac
COLRv1: use ClipBoxes for extents
...
This is a first step; ultimatively, we
should compute the extents is ClipBoxes
are missing.
2022-12-11 13:12:30 -07:00
Behdad Esfahbod
d36a0f8c42
[COLR] Add TODO
2022-12-11 13:12:19 -07:00
Behdad Esfahbod
a306820681
[colr] Use SortedArray instead of Array
2022-12-11 13:03:55 -07:00
Behdad Esfahbod
b9d5e7a8bb
[colr] Set HB_COLRV1_MAX_NESTING_LEVEL to 16
...
Was 100. That seemed excessive.
2022-12-11 12:54:19 -07:00
Behdad Esfahbod
c17afa48de
[colr] Remove COLRV1_ENABLE_SUBSETTING
2022-12-11 12:53:55 -07:00
Behdad Esfahbod
8c29dcaee4
s/HBFixed/F16DOT16/g
2022-10-13 12:06:15 -06:00
Behdad Esfahbod
f7147835eb
[colr] Add MIN_SIZE to Paint
2022-07-15 16:03:25 -06:00
Behdad Esfahbod
7c4e9080c0
[sanitize] Minor trace format fixup
...
This likely() is unlikely to make a difference, and obscures
the return_trace() message by writing out "something" instead
of the true/false value.
2022-07-11 21:52:41 -06:00
Behdad Esfahbod
ae9fc7f533
Clean accelerators a bit more
2022-01-20 12:37:21 -07:00
Garret Rieger
87496bf63e
[subset] fix fuzzer timeout if visisted_paint goes into error.
2022-01-13 11:08:24 -08:00
Qunxin Liu
51655a078e
[subset] COLR : only include glyphs after COLR closure
2021-12-06 13:29:21 -07:00
Behdad Esfahbod
82a9f54410
[colr] Simplify sanitize
2021-11-10 10:50:38 -08:00
Garret Rieger
64b29dbd59
[subset] reuse colrv1 max nesting depth constant for sanitize.
2021-11-10 10:34:46 -07:00
Garret Rieger
ace98cc65f
[subset] Only sanitize recursion depth in COLR.
2021-11-10 10:34:46 -07:00
Qunxin Liu
0a7563a53f
[subset] fuzzer fix: https://oss-fuzz.com/testcase?key=6254792024915968
...
Make sure input is valid, each gid has a corresponding offset value in
the map
2021-11-02 15:25:18 -07:00
Behdad Esfahbod
6d555ce82e
[meta] Use std::forward instead of hb_forward()
2021-11-02 00:18:22 -06:00
Qunxin Liu
85deddb16e
[subset] fuzzer fix: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=40406
2021-10-27 16:16:15 -07:00
Qunxin Liu
f55d834736
[subset] Move struct DeltaSetIndexMap into hb-ot-var-common.hh
...
Also fix naming issues in review comments
2021-10-23 11:22:39 -07:00
Qunxin Liu
8c583db9b5
[subset] COLRv1: update subset() method for new strutc ClipList and VarIdxMap
...
Also fix issues in struct PaintTransform definition
2021-10-23 11:22:39 -07:00
Qunxin Liu
e51c7f8e79
[subset] COLRv1: add ClipList/ClipRecord/ClipBox struct definition
2021-10-23 11:22:39 -07:00
Qunxin Liu
2e5636eeaf
[subset] add DeltasetIndexMap struct definition
2021-10-23 11:22:39 -07:00
Qunxin Liu
d2e986fead
[subset] update COLRv1 table struct definitions
2021-10-23 11:22:39 -07:00
Behdad Esfahbod
c852b86841
Rename HBGlyphID to HBGlyphID16
2021-09-19 16:30:12 -04:00
Behdad Esfahbod
cc3a7ceea3
Fix macro-in-macro invocation
...
../src/hb-ot-color-colr-table.hh:980:2: error: embedding a directive within macro arguments has undefined behavior [-Werror,-Wembedded-directive]
\#if COLRV1_ENABLE_SUBSETTING == 1
2021-07-28 11:53:06 -06:00
Garret Rieger
f3e031539f
Revert "[ci] Bin FontTools version due to recent COLRv1 changes"
...
This reverts commit 163748b505
.
2021-07-28 11:36:34 -06:00
Garret Rieger
acbd8b27dc
[subset] temporarily disable COLRv1 subsetting.
...
Currently COLRv1 spec is being changed so the subsetting implementation is out of sync. Disable subsetting by failing sanitization for COLRv1 tables and disable all colrv1 tests.
2021-07-28 11:36:34 -06:00
Qunxin Liu
35d6af6943
[subset] fix fuzzer testcase: https://oss-fuzz.com/testcase-detail/5965777994907648
2021-06-04 18:16:23 -06:00
Qunxin Liu
1b6008ca62
fix fuzzer testcase: https://oss-fuzz.com/testcase-detail/5417934246772736
2021-06-02 17:32:16 -06:00
Qunxin Liu
f739e1dc6a
[subset] subset both CPAL and COLRv1
2021-05-26 15:39:42 -06:00
Qunxin Liu
b23f29bf05
[subset] Add subset () method for COLRv1 Paint tables, BaseGlyphV1List and LayerV1List
...
Also add support for Offset24 in serializer and repacker
2021-05-12 16:05:11 -06:00
Garret Rieger
de0eba20ed
Remove array for visited_paint.
2021-05-12 15:29:53 -06:00
Qunxin Liu
e59ffe5482
[subset] COLRv1 layer/palette indices closure
2021-05-12 15:29:53 -06:00
Qunxin Liu
430a67ceab
[subset] COLRv1 struct definitions
2021-04-08 11:27:01 -06:00