|
e079dd20
|
2024-07-01T09:36:19
|
|
[instancer] remove the warning for CFF partial instancing
Don't print from the library
|
|
0e1ffd77
|
2024-05-07T13:55:03
|
|
[instancer] add a warning for CFF partial instancing
It's not supported yet
|
|
1cb47eff
|
2024-02-06T14:49:31
|
|
Rename VariationStore to ItemVariationStore
|
|
9701b002
|
2023-11-06T22:14:31
|
|
[subset] Always place CFF1/2 char strings at the end of the packed table.
Makes the behaviour from HB_SUBSET_FLAGS_IFTB_REQUIREMENTS the default.
|
|
c6884377
|
2023-11-06T20:21:46
|
|
[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 https://github.com/skef/harfbuzz/commit/3ae2fe2084d96f61d8ad1bbe42a6ef4e62ec830a rebased onto head w/ tests added.
|
|
cb320d22
|
2023-07-27T10:43:07
|
|
Revert "[cff] Use float instead of double"
This reverts commit c8f67ac28eb18e65adda75818e2c472ad3936874.
Tests failing.
|
|
c8f67ac2
|
2023-07-27T10:34:45
|
|
[cff] Use float instead of double
Reduces memory usage slightly.
|
|
b0472199
|
2023-06-27T16:07:54
|
|
[subset/cff1] Micro-optimize code
Let compiler see whether optional argument is present.
|
|
d4bbe3f4
|
2023-06-23T18:13:30
|
|
[subset/cff] Reuse a calculate index total data size
|
|
97d63e8d
|
2023-06-23T10:43:34
|
|
[subset/cff] Move serialize to accelerator
|
|
26f320dc
|
2023-06-23T10:24:32
|
|
[subset/cff] Remove unused method
|
|
43ec78f9
|
2023-06-23T10:22:30
|
|
[subset/cff] Cache CFF accelerator in hb_subset_plan_t
This shows 7% speedup in:
BM_subset/subset_glyphs/SourceHanSans-Regular_subset.otf/retaingids/10
|
|
64e49e0f
|
2023-06-22T20:27:20
|
|
[subset-cff2] Store num_glyphs in plan
Like cff1 code does.
Also, check for .notdef, like cff1 code does.
|
|
ad025ddf
|
2023-06-22T20:09:36
|
|
[subset-cff] Simplify a bit
|
|
fad2c4ae
|
2023-06-10T10:22:27
|
|
[subset/cff] Simplify a few serialize calls
|
|
2e6919d5
|
2023-06-10T10:08:56
|
|
[subset/cff2] Error handling
Fixes https://oss-fuzz.com/testcase-detail/4916785942757376
|
|
82741304
|
2023-06-04T09:41:41
|
|
[subset] start_embed never returns nullptr
Remove checks.
|
|
21ff66cb
|
2023-02-19T20:00:39
|
|
[subset-cff2] Round blended Private values when instancing
Hopefully no one blends BlueScale...
|
|
a4b7033d
|
2023-02-19T17:48:02
|
|
[cff2-subset] Blend Private values when instancing
|
|
f10a4c9d
|
2023-02-19T17:11:30
|
|
[cff] Rename encode_num to encode_num_cs
|
|
c65eb5a8
|
2023-02-19T15:15:57
|
|
[cff] Specialize cff_private_dict_op_serializer_t for CFF1/2
|
|
bf4b34e8
|
2023-02-19T11:16:51
|
|
[subset-cff2] Don't encode vsindex in Private dict
|
|
220caa7e
|
2023-02-19T11:01:27
|
|
[subset-cff2] Only encode VarStore link if any varstore
|
|
82d9940a
|
2023-02-19T10:51:55
|
|
[subset-cff2] Don't encode vsindex if pinned
|
|
a88f3e8d
|
2023-02-19T10:47:36
|
|
[subset-cff2] Don't serialize VarStore if pinned
|
|
2746597b
|
2023-02-19T12:14:35
|
|
[subset-cff2] Add flush_hintmask
Fixes https://github.com/harfbuzz/harfbuzz/issues/4125
|
|
4867e0b1
|
2023-01-06T11:39:13
|
|
[subset-cff2] Faster instancing
Instantiate blends during parsing. Dedups code as well.
|
|
3757baab
|
2023-01-06T11:23:37
|
|
[subset-cff2] Better condition
Previous condition wasn't working for dropping axes.
|
|
acc6c13f
|
2023-01-06T11:20:41
|
|
[subset-cff] Round numbers when instancing
|
|
2f174f23
|
2023-01-06T11:11:14
|
|
Rename
|
|
c632a164
|
2023-01-06T11:01:25
|
|
[subset/cff] Support instancing
|
|
65d96303
|
2022-12-02T14:59:26
|
|
[subset-cff2] Whitespace
|
|
6012d3b2
|
2022-12-01T17:33:53
|
|
[subset-cff] Write out charstrings zerocopy to serializer
|
|
c7b998b3
|
2022-11-28T16:18:21
|
|
[cff2] Don't share fd-array link
No point.
|
|
3d9e3c2d
|
2022-11-28T16:17:09
|
|
[subset-cff2] Don't share varstore object
|
|
bab8ec58
|
2022-11-21T17:46:32
|
|
[subset-cff] Disable sharing when packing charstring INDEXes
Saves another 8%ish.
|
|
0a42410d
|
2022-05-10T12:05:19
|
|
[cff2] Change extents/shape stack to be just a number
Do the blending immediately.
Fixes https://github.com/harfbuzz/harfbuzz/issues/3559
Benchmark on AdobeVFPrototype shows 35% speedup. Now we're faster
than FreeType:
Benchmark Time CPU Time Old Time New CPU Old CPU New
------------------------------------------------------------------------------------------------------------------------------------------------
BM_Font/glyph_extents/AdobeVFPrototype.otf/hb -0.3792 -0.3792 1584 983 1581 982
BM_Font/glyph_extents/AdobeVFPrototype.otf/ft +0.0228 +0.0224 1220 1248 1218 1245
BM_Font/glyph_extents/AdobeVFPrototype.otf/var/hb -0.3513 -0.3518 1616 1048 1613 1046
BM_Font/glyph_extents/AdobeVFPrototype.otf/var/ft +0.0172 +0.0169 1232 1254 1230 1251
|
|
ac1bb3e3
|
2022-01-20T11:47:17
|
|
[machinery] Move accelerators to constructor/destructor
|
|
e062376e
|
2022-01-19T17:09:34
|
|
[machinery] Make accelerator lazy-loader call Xinit/Xfini
Instead of init/fini. To isolate those functions. To be turned into
constructor/destructors, ideally one per commit (after some SFINAE
foo.)
|
|
a1e9a276
|
2022-01-18T09:27:32
|
|
[subset-cff2] Drop an constructor/destructor pair
|
|
de2cef42
|
2022-01-18T09:21:31
|
|
[bimap] Remove init/fini
|
|
46d4a5e6
|
2021-07-29T15:07:13
|
|
[subset] Convert subset plan to use a flags bit set.
|
|
3e2734cf
|
2021-07-26T02:12:21
|
|
[docs] Don’t use GTK-Doc syntax for internal functions
We don’t generate docs for them, reduces the number of warnings.
|
|
d0e2addd
|
2020-07-18T22:14:52
|
|
minor
|
|
1026b3d0
|
2020-05-06T21:32:24
|
|
[subset] Check vector resize() call for failure (#2389)
Other .resize() calls are checked, presumably this one should be as well.
|
|
2be859d2
|
2020-04-20T23:48:23
|
|
minor, replace nullptr checks with implicit ones
|
|
2dda6dd7
|
2020-04-20T14:12:45
|
|
minor, tweak spacing
turn 8 spaces to tab, add space before Null/Crap
|
|
8ca9df7a
|
2020-03-10T10:40:05
|
|
[subset] Remove not needed blob sanitize call
|
|
5935a1dc
|
2020-03-03T12:12:51
|
|
add pop_discard() calls to errror returns
|
|
c05458ec
|
2020-03-02T16:51:19
|
|
update cff & cff2 subsetters
|
|
2792fb8b
|
2020-02-02T22:00:53
|
|
first rewrite of cff/cff2 _subset with _subset2
|
|
ce114d6b
|
2019-12-31T15:53:02
|
|
minor, tweak spaces
|
|
453050ad
|
2019-10-13T08:38:56
|
|
Merge remote-tracking branch 'upstream/master' into var-subset
|
|
c7621cf2
|
2019-10-08T13:24:26
|
|
Minor, replace hb_set_add with private API
|
|
9ff32b79
|
2019-08-29T19:53:18
|
|
Merge remote-tracking branch 'upstream/master' into glyf-rebase
|
|
a0b4ac4d
|
2019-08-24T17:57:14
|
|
Turn 8 spaces to tab across the project
According to the current code style of the project
|
|
8bf989ea
|
2019-07-08T17:13:29
|
|
update from master
|
|
5763a927
|
2019-07-01T15:17:19
|
|
Merge branch 'master' into var-subset
|
|
f3ee2bd0
|
2019-06-20T14:33:09
|
|
add ops & methods to hb_bimap_t making it more like hb_map_t
moved has () to hb_bimap_t from hb_inc_bimap_t
moved identity () to hb_inc_bimap_t
removed forward()
|
|
09496695
|
2019-06-17T22:12:40
|
|
add hb_bimap_t, subclass hb_inc_bimap_t replacing CFF::remap_t
|
|
737436d3
|
2019-06-18T13:07:44
|
|
Streamline HB_NO_CFF
|
|
9b853f75
|
2019-06-09T11:49:25
|
|
[cff] Use switch on multi-format structs (#1762)
|
|
4ddab6fa
|
2019-06-05T11:21:27
|
|
Merge branch 'master' into var-subset
|
|
ff799520
|
2019-05-14T07:44:03
|
|
Hopefully last warning fix
|
|
7f6fca4e
|
2019-05-12T10:29:47
|
|
Force-disable CFF code under disabling conditions
Subsetter size goes down from 190kb to 119kb. Main library about 7kb.
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
|
|
62dfe7ae
|
2019-05-10T23:17:15
|
|
[cff] Minor
|
|
02ae2591
|
2019-05-08T13:44:03
|
|
initialize return param subr_num in popSubrNum
also snake_cased popSubrtNum and other surrounding function names
|
|
a1177fec
|
2019-03-29T08:43:47
|
|
Merge branch 'master' into var-subset
rebase master
|
|
b986c6a3
|
2019-03-29T20:17:46
|
|
[C++11] Remove IntType::set() in favor of operator=
|
|
f1e97c18
|
2019-02-25T09:59:27
|
|
renamed hb_map2_t to hb_bimap_h in its own .hh
|
|
a00d1d5e
|
2019-02-21T16:34:49
|
|
fix CFF2 local subr subsetting
bug exposed by impl change of fdmap
also fixed name of subr_remap_ts as subr_remaps_t
|
|
f289ffe5
|
2019-02-25T09:59:27
|
|
renamed hb_map2_t to hb_bimap_h in its own .hh
|
|
c485b77c
|
2019-02-21T16:34:49
|
|
fix CFF2 local subr subsetting
bug exposed by impl change of fdmap
also fixed name of subr_remap_ts as subr_remaps_t
|
|
c8420109
|
2019-02-20T15:48:29
|
|
subset HVAR
Re-implemented & repurposed CFF:remap_t as hb_map2_t (moved to hb-ot-layout-common.hh) for two-way mapping for use by index map subsetting.
Hooked up HVAR subsetter through _subset2.
Some renaming in CFF code.
|
|
d817b446
|
2019-02-25T09:59:27
|
|
renamed hb_map2_t to hb_bimap_h in its own .hh
|
|
a7b801f6
|
2019-02-21T16:34:49
|
|
fix CFF2 local subr subsetting
bug exposed by impl change of fdmap
also fixed name of subr_remap_ts as subr_remaps_t
|
|
09df17e7
|
2019-02-20T15:48:29
|
|
subset HVAR
Re-implemented & repurposed CFF:remap_t as hb_map2_t (moved to hb-ot-layout-common.hh) for two-way mapping for use by index map subsetting.
Hooked up HVAR subsetter through _subset2.
Some renaming in CFF code.
|
|
f2908b4d
|
2019-01-31T14:16:37
|
|
Implement subset --regain-gids option with CFF1/2
along with api tests & expected results
|
|
846e05a2
|
2019-01-28T16:50:20
|
|
[subset] Re-add glyphs array to subset plan, with new name 'glyphs_deprecated'. Switch CFF subsetting to use it.
|
|
a5e5dd8b
|
2019-01-22T16:30:07
|
|
Fix sign-compare error resulted from promoting unsigned integers to signed larger ints
Clang and gcc know not to warn in these cases, but not nonmainstream compilers
|
|
29f0b6bc
|
2018-12-22T07:47:04
|
|
CFF renaming (#1507)
* reimplement ByteStr as byte_str_t based on hb_ubytes_t
Unuse start_embed<ByteStr>
Also renamed SubByteStr to byte_str_ref_t
More renaming to come
* substr renamed to str_ref in line with its type byte_str_ref_t
* uncamelize non-table struct names
* uncamelized non-struct types OpCode etc
* add byte_str_t copy ctor
* test
* test2
* undo tests
* fix bot failure
* undo the previous change
* fixed tabs, added inline
* Revert "fixed tabs, added inline"
This reverts commit 21163c30e9d18759414f7fe2518628241599f039.
* fix tabs
|
|
474a1205
|
2018-12-21T18:46:51
|
|
[array/vector] Rename len to length
|
|
e4120085
|
2018-12-17T21:31:01
|
|
Remove redundant void from C++ sources (#1486)
|
|
b2ebaa9a
|
2018-12-16T22:38:10
|
|
Remove redundant 'inline' from methods (#1483)
|
|
2941208f
|
2018-12-11T12:21:24
|
|
[CFF] oss-fuzz issue 11690 ASSERT: substr.offset >= opStart (#1461)
* fix oss-fuzz 11690: substr.offset >= opStart
detect recursive subroutine call & handle as error
* fix build failure
* add minimized test case for oss-fuzz 11690
* removed asserts
|
|
33358624
|
2018-12-11T12:20:20
|
|
minimize use of assert: removed or changed to error handling (#1467)
|
|
825df6db
|
2018-11-30T23:04:59
|
|
[CFF] Change spaces to tabs
|
|
592f39b3
|
2018-11-30T22:54:57
|
|
[CFF] Whitespace
|
|
b6903bd6
|
2018-11-16T13:46:58
|
|
ensure fdmap initialized as identity for single-FD (non-CID) fonts
|
|
9d0231cf
|
2018-11-15T15:39:43
|
|
fixed a subset bug when no font dicts reduce
|
|
0dfa584c
|
2018-11-12T08:47:07
|
|
changed Adobe company name
|
|
0996c0ff
|
2018-11-07T14:48:37
|
|
implented no-desubroutinize with CFF2 along with API test
replaced AdobeVFPrototype.abc.otf with a hinted (maually) & subroutinized copy
replaced expected results as well
|
|
2840a104
|
2018-11-01T16:18:13
|
|
tweaks to build with new merge
|
|
82248b92
|
2018-11-01T10:36:50
|
|
fix leak attempt ^2
|
|
a9c305c2
|
2018-11-01T10:31:21
|
|
fix leaks
|
|
d56e338a
|
2018-10-31T22:30:34
|
|
CFF1 no-desubroutinize + no-hinting
no-desubroutinize option is disabled for now
code cleanup (esp. CFF1 width handling)
bug fixes & renaming
|
|
8679d02b
|
2018-10-18T13:04:21
|
|
implement flex ops for glyph extents/subset
also removed unused CSInterpEnv::move_[xy]_with_arg
fixed bug a width being left over on argStack with CFF1
|
|
b51418f5
|
2018-10-08T15:05:36
|
|
added CFF2 get_extents
added source hb-ot-cff2-table.cc
augmented VariationData to return scalars
misc bug fixes, renaming, cleanup
|
|
35b64dfb
|
2018-10-02T14:13:36
|
|
silence & fix new warnings
|
|
ebeccf3e
|
2018-09-18T17:24:30
|
|
fixed char widths & standard Encoding in subset CFF
also merged flush_n_args to flush_args into one
takes start index of the arguments on stack instead of count
|