src/hb-subset-input.cc

Branch


Log

Author Commit Date CI Message
Behdad Esfahbod a46b9320 2025-04-05T23:11:59 [subset] Remove printf from library!
Khaled Hosny 7b27c8ed 2025-01-11T18:13:18 10.2.0
Qunxin Liu 3bb89eeb 2024-11-24T17:00:14 [instancer] use hb_parse_double() for parsing axis positions Added hb_subset_axis_range_from/to_string()
Emanuel Czirai dce8e457 2024-06-24T22:54:31 typo `acsii` -> `ascii` in `hb-subset-input.cc`
Behdad Esfahbod 3fa47cea 2024-05-30T17:39:33 [subset] Add HB_SUBSET_FLAGS_NAME_LEGACY to keep_everything() Fixes https://github.com/harfbuzz/harfbuzz/issues/4739
Khaled Hosny 71b1ba7a 2024-05-13T23:07:51 8.5.0
Garret Rieger 3f38ffd6 2024-05-13T18:50:43 [subset] Fix remaining double conversion warnings.
Garret Rieger 4cf606f6 2024-05-02T20:46:29 [instancer] Promote partial instancing api out of experimental.
Khaled Hosny 2b3631a8 2024-03-17T07:44:19 8.3.1
Qunxin Liu cfbb6a68 2024-03-14T17:33:34 [subset] support BASE table subsetting (#4618) * [subset] support BASE table * [subset] add tests for BASE table subsetting
Qunxin Liu d6431dc7 2024-03-06T15:20:10 [instancer] support *=drop, which would pin all axis to default location
Garret Rieger 66a404ca 2023-11-15T21:41:30 [subset] Fix hb_subset_input_get_axis_range documentation.
Garret Rieger d30c1dac 2023-11-15T20:16:07 Add test suite for instancing option parsing.
Garret Rieger 43236ce3 2023-11-01T22:34:39 [instancer] add the option to leave blanks in the min:def:max syntax. When parsing axis positions in the --variations flag recognize empty values as meaning the existing value for that part. For example: :300:500 Specifies min = existing, def = 300, max = 500. See: https://github.com/fonttools/fonttools/issues/3322
一丝 b0150ffd 2023-10-20T21:53:14 [subset] keep East Asian spacing vhal, halt, chws, vchw by default Closes: https://github.com/harfbuzz/harfbuzz/issues/4451
Qunxin Liu 45c2d05d 2023-08-31T15:45:22 [instancer] add subset() for MVAR
Qunxin Liu 32cfa37e 2023-05-08T13:30:39 [instancer] command line support for partial instancing -Also updated hb_subset_input_set_axis_range (), so user can define default value as well
Qunxin Liu 0065658e 2023-08-07T11:12:02 [instancer] enable cvar instancing code
Qunxin Liu 13f05ab9 2023-07-20T09:57:02 [instancer] support avar table partial instancing
Qunxin Liu 58f68dd3 2023-05-04T14:25:14 [instancer] wrap hb_subset_input_Set_axis_range() under experimental Also add notes: it's not actually working yet.
Qunxin Liu 22cca43d 2023-04-20T14:37:29 [instancer ]update internal hashmap to use Triple instead of single value -Added hb-subset-instancer-solver.hh file and moved Triple struct to the head file
Qunxin Liu 0799afe2 2023-04-20T14:02:20 [instancer] Add hb_subset_input_set_axis_range() API
Khaled Hosny 4584bcdc 2023-05-10T00:20:25 7.3.0
Garret Rieger 8eb9f312 2023-05-05T15:56:50 [subset] s/Since/XSince/.
Garret Rieger d339298f 2023-05-05T06:00:30 [subset] fix hb_subset_input_old_to_new_gid_mapping method comment.
Garret Rieger 3021b2db 2023-05-05T05:57:05 [subset] change glyph mapping api to return a mutable map. Maintains consistency with our other set based api methods.
Garret Rieger 77a81554 2023-05-04T23:01:56 [subset] Add some basic tests for a provided glyph map.
Garret Rieger 98e73192 2023-05-04T22:20:06 [subset] Add command line flag to provide a gid mapping.
Garret Rieger e14020b2 2023-05-04T19:24:01 [subset] remove return value from mapping setting function.
Garret Rieger 68266347 2023-05-04T19:18:54 [subset] apply the user supplied glyph map.
Garret Rieger e711e305 2023-05-04T18:47:55 [subset] Add new subsetting API method to receive a user specified glyph mapping.
Qunxin Liu a975ec48 2023-02-14T13:26:59 [instancer] apply cvar deltas
Khaled Hosny 8bdaeddf 2023-02-11T23:44:58 7.0.0
Khaled Hosny 0ea8bbd9 2023-02-11T20:01:06 [doc] Use XSince for REPLACEME/EXPERIMENTAL To hide them from gtk-doc so that we can finally enable gtkdoc-check.
Garret Rieger 2b6d74b4 2023-01-31T17:37:37 [subset] for keep everything, don't drop any tables.
Behdad Esfahbod 26d69e05 2023-01-12T12:46:44 [subset-input] Move constructor to .cc file
Behdad Esfahbod a916ad9e 2023-01-12T12:44:16 [subset-input] Move initialization to constructor
Behdad Esfahbod 875f9f6f 2023-01-12T12:37:48 [subset-input] Use shared_ptr for sets
Behdad Esfahbod ef005bc8 2023-01-12T12:09:14 [subset-input] Fix destruction Ouch! Object was already destroyed at that point before.
Behdad Esfahbod e78a68bf 2023-01-11T15:34:11 [subset-input] Don't RETAIN_GIDs in keep-everything
Behdad Esfahbod 1426f1c8 2023-01-11T13:23:34 [subset-plan] Simplify name_table_overrides allocation
Behdad Esfahbod 5cab4a55 2023-01-11T13:21:57 [subset-input] Simplify axes_location allocation
Khaled Hosny 02948263 2023-01-06T22:53:19 [subset] Document that CFF2 instancing is now supported
Behdad Esfahbod 4a5bd7a9 2023-01-01T16:53:28 [subset] Add hb_subset_input_keep_everything() Fixes https://github.com/harfbuzz/harfbuzz/issues/3998 New API: + hb_subset_input_keep_everything()
Behdad Esfahbod 52110f13 2023-01-01T16:22:02 [subset-input] Refactor copy-pasta code
Garret Rieger d77fca99 2022-12-21T21:18:20 [subset] when subsetting preprocessor fails, reference the returned face. The caller of the method is expected to destroy the returned result.
Khaled Hosny 947e01a7 2022-12-18T23:40:01 [subset] Suppress gtk-doc warning
Khaled Hosny afcae83a 2022-12-16T23:14:57 6.0.0
Garret Rieger 64cbe8b9 2022-12-12T20:41:40 [subset] Also note that only full instancing works.
Garret Rieger 0da59f86 2022-12-12T20:26:11 [subset] note that CFF/CFF2 instancing is not yet supported.
Behdad Esfahbod 7f73b57b 2022-12-10T17:35:52 [subset] Graduate L1 instancing API from experimental Fixes https://github.com/harfbuzz/harfbuzz/issues/3926
Khaled Hosny 0f4e38cd 2022-12-10T16:39:26 [subset] Small doc fixes
Garret Rieger e66d0212 2022-12-08T22:56:07 [subset] replace subset-processing.md reference with link to it on github.
Garret Rieger 27201ed3 2022-12-08T22:48:27 [subset] fix up hb_subset_preprocess api comment.
Garret Rieger 13b03883 2022-12-07T22:53:44 [subset] link to preprocessing doc from api comment.
Garret Rieger c097abab 2022-12-07T22:50:09 [subset] set no prune unicode ranges flag in preprocessor. To avoid modifying the original unicode range values in the source font.
Garret Rieger bc87fe95 2022-12-07T21:43:14 [subset] add note about memory management with preprocessed faces.
Garret Rieger eda02c2e 2022-12-05T20:18:41 [subset] Move hb_subset_preprocess to be non-experimental.
Garret Rieger 76d5482a 2022-12-05T19:40:49 [subset] always return a valid face from hb_subset_preprocess.
Qunxin Liu 8eadb836 2022-11-10T10:33:26 [subset] Update hb_subset_input_override_name_table API Override the name string for the NameRecord identified by name_id, platform_id, encoding_id and language_ids specified by the user. If a record with specified name_id does not exist, this API will create a new NameRecord with provided info and insert it to the name table.
Garret Rieger 51028e63 2022-11-23T22:51:16 [subset] Retain all glyphs in preprocessed face.
Garret Rieger 4c49daf7 2022-11-23T22:33:57 [subset] actually use the preprocessed face in hb-subset. Tests weren't actually using the preprocessed face due to this typo in util/hb-subset.
Garret Rieger 463ae07e 2022-11-23T18:41:23 [subset] In the preprocess subset call always use long loca. Long loca is needed so that we can store the trimmed glyph bytes to allow us to safely skip trimming in the later subset.
Behdad Esfahbod f6076890 2022-11-14T16:06:39 Hide all mentions of name_table_overrides behind EXPERIMENTAL_API Fixes https://github.com/harfbuzz/harfbuzz/issues/3872
Behdad Esfahbod ebc382a8 2022-11-14T15:59:46 Revert "Avoid use values () in hb-hashmap if value_t has an overriden operator &" This reverts commit b92e4cc0091e093f6941019e1a53cc04a137017a.
Qunxin Liu b92e4cc0 2022-11-14T08:54:24 Avoid use values () in hb-hashmap if value_t has an overriden operator &
Behdad Esfahbod cd011cea 2022-11-09T11:30:44 Use hb_memcpy instead of strncpy Nul-termination is not intended.
Qunxin Liu 6314aa7d 2022-10-28T10:44:48 [subset] add an experimental API that can override name strings for specified name_id
Garret Rieger f53ebf55 2022-10-14T19:38:19 [subset] Add hb_subset_preprocess to experimental symbol list for check-symbols.
Garret Rieger fdb98ed8 2022-10-14T18:30:39 [subset] add missing HB_EXTERN.
Garret Rieger 515863e5 2022-10-13T23:42:00 [subset] Remove add accelerator flag, replace with new api method. Adds hb_subset_preprocess() which preprocesses the face and attaches accelerator data.
Qunxin Liu 0a6c16a3 2022-08-08T13:47:39 [instance] instantiate fvar table Added an old->new axes_indices mapping in the subset plan
Khaled Hosny 4a1d891c 2022-09-17T03:15:51 5.2.0
Qunxin Liu df55f840 2022-06-30T09:36:19 [instance] instantiate STAT table when axes are pinned at fixed locations restricting ranges is not supported yet.
Qunxin Liu 2a4773e4 2022-06-21T19:29:52 add option "--instance", store axes_location in subset_plan and drop all variation tables when all axes are pinned at default
Behdad Esfahbod 386e1bba 2022-07-05T12:46:05 Merge pull request #3699 from googlefonts/filter_scripts [subset] Add support for --layout-scripts
Garret Rieger 70e32a66 2022-06-30T21:00:48 [subset] Add layout_scripts to subset input.
Khaled Hosny 98e90cc6 2022-06-30T08:43:57 [docs] Reduce warnings Use markdown syntax for inline code blocks instead of %true, %false, and %NULL.
Behdad Esfahbod cc7ebb0f 2022-06-04T05:42:58 Remove remaining mention to complex shapers in the code https://github.com/harfbuzz/harfbuzz/pull/3628#issuecomment-1146248037
Behdad Esfahbod 40d7d56e 2022-06-03T05:40:18 [subset-input] Minor move
Behdad Esfahbod 40193adb 2022-06-03T05:35:19 [subset] Update default features list
Garret Rieger d700646c 2021-09-16T11:23:09 [subset] In preperation for 3.0.0 release remove legacy subsetting api methods.
Khaled Hosny 505df5ab 2021-09-07T13:46:08 2.9.1
Garret Rieger 3844e58e 2021-08-30T11:16:51 [subset] remove helper functions for accessing subset input sets.
Garret Rieger 102666da 2021-08-27T10:31:37 [subset] add test for hb_subset_input_set (...).
Garret Rieger 7194c2a2 2021-08-27T08:20:58 [subset] use anonymous union to hold the input sets instead of a map.
Garret Rieger 05204d75 2021-08-25T16:51:26 [subset] implement hb_subset_input_set (...). Switch to storing the sets keyed by enum internally.
Garret Rieger f2441a4b 2021-08-24T15:53:32 [subset] Remove retain all layout features flag. Instead use inverted sets to handle requesting all features. Modifies feature collection in subset plan to intersect the set of requested features against the features in the font. This prevents iterating a fully filled feature tag set.
Garret Rieger fb07f8f8 2021-08-23T15:33:57 During subset input creation check for set alloc failures and fail if encountered.
Khaled Hosny 80ff72f3 2021-08-18T13:09:03 [doc] Misc fixes
Khaled Hosny 9aa6f8a9 2021-08-18T09:32:04 2.9.0
Garret Rieger cb05c363 2021-08-13T15:19:20 [subset] add some basic tests for the legacy subset methods.
Garret Rieger d18aad7e 2021-08-13T15:05:48 [subset] restore old subsetting api methods. These will be left in place until the 3.0.0 release.
Garret Rieger f9d8e4a9 2021-07-29T15:25:41 [subset] switch ..._set_flags to not take a mask.
Garret Rieger 3d534b14 2021-07-29T11:52:14 [subset] convert subset input flags into bit flags. Store the flags in a bit set. Updates the public api to work with the bit set directly.
Behdad Esfahbod 4762fcb4 2021-07-26T11:48:55 Merge pull request #3067 from googlefonts/glyph_names [subset] support option --glyph-names
Khaled Hosny ec99fdb7 2021-07-26T01:35:13 [sebset] Use [s|g]et_flag for retain_all_layout_features Looks like this was missed when adding hb_subset_input_[s|g]et_flag()
Khaled Hosny acc7100a 2021-07-26T02:13:49 [docs] Improve subset documentation
Qunxin Liu 71b5509c 2021-07-20T20:05:35 [subset] support option --glyph-names
Garret Rieger 1fde80ad 2021-07-22T16:45:48 [subset] update comments referencing hb_subset_input_t parameter.