Michiharu Ariza
d56e338a90
CFF1 no-desubroutinize + no-hinting
...
no-desubroutinize option is disabled for now
code cleanup (esp. CFF1 width handling)
bug fixes & renaming
2018-10-31 22:30:34 -07:00
Michiharu Ariza
36c2c374bf
removed unused multi_val from DictVal
2018-10-23 15:11:09 -07:00
Michiharu Ariza
7d99a6cef8
overhauled error handling in CFF interpreter
...
minimized "if (error) return false" idiom
2018-10-12 02:16:07 -07:00
Michiharu Ariza
b51418f596
added CFF2 get_extents
...
added source hb-ot-cff2-table.cc
augmented VariationData to return scalars
misc bug fixes, renaming, cleanup
2018-10-08 15:05:36 -07:00
Michiharu Ariza
ae7f0e83d4
fixed memory leaks
...
in CFF1 & CFF2 accelerators, VORG subsetter
2018-09-24 22:49:44 -07:00
Michiharu Ariza
98b94f8ba5
fix static_assert failure in OffsetTo<TopDict>
2018-09-17 13:56:39 -07:00
Michiharu Ariza
1234a81368
add head table to CFF/CFF2
2018-09-13 10:55:56 -07:00
Michiharu Ariza
1666b89e30
subset CFF1 String Index
...
Repurposed FDMap as Remap then subclassed for remapping SIDs
misc code cleanup
2018-09-10 16:00:20 -07:00
Michiharu Ariza
aca73c9df2
subset CFF1 Encoding & Charset
...
fixed misc Charset bugs
added source file hb-ot-cff1.table.cc
renamed things for clarity & consistency
2018-09-06 17:28:15 -07:00
Michiharu Ariza
5ea03d2951
fix build by untemplatizing DictOpSet & DictVal
...
as they aren't instantiated with BlendArg (yet)
2018-09-04 11:29:15 -07:00
Michiharu Ariza
f2d299b0b7
Drop hints from CFF2 charstrings
...
Templatized ArgStack so it may store the default value along with blend deltas as BlendArg while parsing blend operator arguments in CFF2 charstring
Added get_region_count() method to VarRegionList & VariationStore
2018-09-04 10:25:21 -07:00
Michiharu Ariza
fcf177885b
templatized ArgStack as a prep to store blends
2018-08-31 16:28:47 -07:00
Michiharu Ariza
968168bf0e
drop hints from CFF1 charstrings
...
renamed confusing Stack.size to Stack.count
2018-08-31 13:28:16 -07:00
Michiharu Ariza
8af9690ac7
Merge branch 'master' into cff-subset
...
Renamed cff "private" source/headers without the suffix
2018-08-29 13:26:17 -07:00
Michiharu Ariza
cef75ea41a
Added CFF2 Subr nullifier
...
along with CFF2 charstring interpreter
factored out common code between CFF1 & CFF2 to CSInterpreter
moved fetch_op from Interpreter to InterpEnv
misc code clean up & bug fixes
2018-08-17 13:13:18 -07:00
Michiharu Ariza
f57d6bcbca
renamed CFF::Index to CFF::CFFIndex
...
to avoid confusion with OT::Index
2018-08-16 08:03:46 -07:00
Michiharu Ariza
633ce88de9
CFF Subrs subsetting
...
Unreferenced subroutines are nullified (not removed) in a subset font
Separate Interpreter struct from hb-ot-cff-common-private.hh in a set of four header files, augmented for CharString (CS):
hb-cff-interp-common-private.hh
hb-cff-interp-dict-common-private.hh
hb-cff-interp-cs-common-private.hh
hb-cff-interp-cs.hh
Interpreter runtime is separated off as a new struct InterpEnv sub-classed differently for Dict and CharString (CS)
2018-08-15 12:00:19 -07:00
Michiharu Ariza
64c5412264
Added CFF support
...
Added sources hb-ot-cff-table.hh, hb-subset-cff.cc & hh
Templatized Index because CFF uses 16-bit count while CFF2 uses 32-bit
Misc code cleanup & bug fixes
2018-08-10 11:07:07 -07:00
Michiharu Ariza
5561b81849
subset FDSelect and FDArray
...
Added a set of sources hb-subset-cff-common-private.cc & .hh for FDSelect subseting code.
Added FDSelect format 4 (CFF2 only) support. Shared its implementation with format 3 as a template.
2018-08-06 10:04:53 -07:00
Michiharu Ariza
cc3f4e00aa
silence gcc
2018-08-03 15:00:37 -07:00
Michiharu Ariza
00970dd242
Removed parsed hint fields from CFF2PrivateDictValues
...
Instead moved & stored uniformly in values vector (renamed from opstrs)
This should be fine as we aren't likely going to use them as hints after all
Templatized DictValues whether to parse them out
For subsetter, they aren't parsed
2018-08-03 14:35:09 -07:00
Michiharu Ariza
76f7397c10
templatized CFF2 accelerator for lean Private dict interpretting for subset
...
also fixed local subrs serialization
2018-08-02 16:28:10 -07:00
Michiharu Ariza
e2fd49e477
Merge branch 'master' into cff-subset
2018-08-02 11:39:22 -07:00
Michiharu Ariza
693ae80474
more silencing fixes
2018-08-02 11:22:42 -07:00
Michiharu Ariza
58279c3db4
silence Codacy
2018-08-02 10:18:01 -07:00
Michiharu Ariza
19ce0b24c0
removed unused field OpStr::update
2018-08-01 17:34:59 -07:00
Michiharu Ariza
16f4dc9b73
fixed CFF2VariationStore::serialize
...
also get_size
2018-08-01 16:06:52 -07:00
Michiharu Ariza
b2ff582c8c
Implemented hb_subset_cff2
...
Added serialize functions to CFF2 structs
Fixed issues & bugs & code cleanup
Now subsetting CFF2 table outputs something
2018-08-01 11:30:38 -07:00
Michiharu Ariza
9c4cadaef0
Added sanitize functions & calls
...
Added sanitize functions to FDSelect
Added satnitize calls for FDSelect, VariationStore, FDArray, TopDict
2018-07-30 14:28:40 -07:00
Michiharu Ariza
3a61c3e935
first push of CFF/CFF2 work
...
Index, Dict structs
hooked up to hb-subset (takes CFF2, outputs empty CFF2)
2018-07-18 14:17:52 -07:00