src/hb-subset-cff2.cc


Log

Author Commit Date CI Message
Behdad Esfahbod b986c6a3 2019-03-29T20:17:46 [C++11] Remove IntType::set() in favor of operator=
Michiharu Ariza f2908b4d 2019-01-31T14:16:37 Implement subset --regain-gids option with CFF1/2 along with api tests & expected results
Garret Rieger 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.
Behdad Esfahbod 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
Michiharu Ariza 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
Behdad Esfahbod 474a1205 2018-12-21T18:46:51 [array/vector] Rename len to length
Ebrahim Byagowi e4120085 2018-12-17T21:31:01 Remove redundant void from C++ sources (#1486)
Ebrahim Byagowi b2ebaa9a 2018-12-16T22:38:10 Remove redundant 'inline' from methods (#1483)
Michiharu Ariza 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
Michiharu Ariza 33358624 2018-12-11T12:20:20 minimize use of assert: removed or changed to error handling (#1467)
Behdad Esfahbod 825df6db 2018-11-30T23:04:59 [CFF] Change spaces to tabs
Behdad Esfahbod 592f39b3 2018-11-30T22:54:57 [CFF] Whitespace
Michiharu Ariza b6903bd6 2018-11-16T13:46:58 ensure fdmap initialized as identity for single-FD (non-CID) fonts
Michiharu Ariza 9d0231cf 2018-11-15T15:39:43 fixed a subset bug when no font dicts reduce
Michiharu Ariza 0dfa584c 2018-11-12T08:47:07 changed Adobe company name
Michiharu Ariza 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
Michiharu Ariza 2840a104 2018-11-01T16:18:13 tweaks to build with new merge
Michiharu Ariza 82248b92 2018-11-01T10:36:50 fix leak attempt ^2
Michiharu Ariza a9c305c2 2018-11-01T10:31:21 fix leaks
Michiharu Ariza 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
Michiharu Ariza 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
Michiharu Ariza 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
Michiharu Ariza 35b64dfb 2018-10-02T14:13:36 silence & fix new warnings
Michiharu Ariza 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
Michiharu Ariza c0c85b85 2018-09-17T11:14:56 implemented get_glyph_extents with CFF1 Implemented path operators in a new struct PathProc hooked up to CSOpSet Added current point to CSInterpEnv
Michiharu Ariza 0f159a38 2018-09-12T16:08:54 fixed serialize_fdselect_3_4
Michiharu Ariza 5b453f77 2018-09-11T16:20:39 fixed off-by-one error with offSize
Michiharu Ariza cc52e53c 2018-09-10T16:27:49 Removed unused subr subset code
Michiharu Ariza 1666b89e 2018-09-10T16:00:20 subset CFF1 String Index Repurposed FDMap as Remap then subclassed for remapping SIDs misc code cleanup
Michiharu Ariza aca73c9d 2018-09-06T17:28:15 subset CFF1 Encoding & Charset fixed misc Charset bugs added source file hb-ot-cff1.table.cc renamed things for clarity & consistency
Michiharu Ariza f2d299b0 2018-09-04T10:25:21 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
Michiharu Ariza fcf17788 2018-08-31T16:28:47 templatized ArgStack as a prep to store blends
Michiharu Ariza 968168bf 2018-08-31T13:28:16 drop hints from CFF1 charstrings renamed confusing Stack.size to Stack.count
Michiharu Ariza 8c5e03b5 2018-08-30T17:21:56 Added drop_hints to SubrFlattener
Michiharu Ariza 9fd08cc2 2018-08-29T18:18:18 CFF2 subroutine flattner Factored out CFF1 & CFF2 common subsetting code in hb-subset-cff-common.hh
Michiharu Ariza 8af9690a 2018-08-29T13:26:17 Merge branch 'master' into cff-subset Renamed cff "private" source/headers without the suffix
Michiharu Ariza a11420b4 2018-08-29T12:14:30 Subroutine flattener for CFF1 Subr-flattened charstrings are temporarily re-encoded in ByteStrBuff during "plan" phase, then copied to hb_serialize_context_t during "write" phase CSOpSet may callback opcode processing "virtual" functions via CRTP Numer struct may store a value as fixed optionally in addition to int and float
Michiharu Ariza 5cde2f55 2018-08-17T16:50:13 drop hints from CFF & CFF2 Private
Michiharu Ariza cef75ea4 2018-08-17T13:13:18 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
Michiharu Ariza f57d6bcb 2018-08-16T08:03:46 renamed CFF::Index to CFF::CFFIndex to avoid confusion with OT::Index
Michiharu Ariza 867f68bd 2018-08-15T15:53:50 fix build attempt ^7
Michiharu Ariza 685db67b 2018-08-15T15:45:17 fix build attempt ^6
Michiharu Ariza 2810caaf 2018-08-15T15:30:24 fix build attempt ^5
Michiharu Ariza 633ce88d 2018-08-15T12:00:19 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)
Michiharu Ariza a97ed342 2018-08-10T12:55:22 fixed inclusion of excluded Private & local Subrs It was bloating a multi-FD subset font unnecessarily defined a wrapper struct FDMap for fdmap
Michiharu Ariza 64c54122 2018-08-10T11:07:07 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
Michiharu Ariza 9fae33b9 2018-08-06T10:44:12 Silence Codacy
Michiharu Ariza 5561b818 2018-08-06T10:04:53 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.
Michiharu Ariza 00970dd2 2018-08-03T14:35:09 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
Michiharu Ariza 76f7397c 2018-08-02T16:28:10 templatized CFF2 accelerator for lean Private dict interpretting for subset also fixed local subrs serialization
Michiharu Ariza 43040564 2018-08-02T12:23:10 removed TRACE_SERIALIZE from non-member function _write_cff2
Michiharu Ariza e2fd49e4 2018-08-02T11:39:22 Merge branch 'master' into cff-subset
Michiharu Ariza 693ae804 2018-08-02T11:22:42 more silencing fixes
Michiharu Ariza b2ff582c 2018-08-01T11:30:38 Implemented hb_subset_cff2 Added serialize functions to CFF2 structs Fixed issues & bugs & code cleanup Now subsetting CFF2 table outputs something
Michiharu Ariza 9c4cadae 2018-07-30T14:28:40 Added sanitize functions & calls Added sanitize functions to FDSelect Added satnitize calls for FDSelect, VariationStore, FDArray, TopDict
Michiharu Ariza 3a61c3e9 2018-07-18T14:17:52 first push of CFF/CFF2 work Index, Dict structs hooked up to hb-subset (takes CFF2, outputs empty CFF2)