From 8ce968341285be9dd5bf10a6bd5cf316995248cd Mon Sep 17 00:00:00 2001 From: Garret Rieger Date: Wed, 23 Jun 2021 13:55:11 -0700 Subject: [PATCH] [subset] add documentation for all hb-subset.h methods. --- src/hb-subset-input.cc | 71 ++++++++++++++++++++++++++++++++++++++++-- src/hb-subset.h | 59 +++++++++++++++++++---------------- 2 files changed, 100 insertions(+), 30 deletions(-) diff --git a/src/hb-subset-input.cc b/src/hb-subset-input.cc index 121a6883e..7a9b81d33 100644 --- a/src/hb-subset-input.cc +++ b/src/hb-subset-input.cc @@ -198,8 +198,6 @@ hb_subset_input_create_or_fail () * hb_subset_input_reference: (skip) * @subset_input: a subset_input. * - * - * * Return value: * * Since: 1.8.0 @@ -235,6 +233,8 @@ hb_subset_input_destroy (hb_subset_input_t *subset_input) * hb_subset_input_unicode_set: * @subset_input: a subset_input. * + * Return value: pointer to the set of unicode codepoints to retain. + * * Since: 1.8.0 **/ HB_EXTERN hb_set_t * @@ -247,6 +247,8 @@ hb_subset_input_unicode_set (hb_subset_input_t *subset_input) * hb_subset_input_glyph_set: * @subset_input: a subset_input. * + * Return value: pointer to the set of glyph ids to retain. + * * Since: 1.8.0 **/ HB_EXTERN hb_set_t * @@ -255,18 +257,43 @@ hb_subset_input_glyph_set (hb_subset_input_t *subset_input) return subset_input->glyphs; } +/** + * hb_subset_input_nameid_set: + * @subset_input: a subset_input. + * + * Return value: pointer to the set of name ids to retain. + * + * Since: REPLACE + **/ HB_EXTERN hb_set_t * hb_subset_input_nameid_set (hb_subset_input_t *subset_input) { return subset_input->name_ids; } +/** + * hb_subset_input_namelangid_set: + * @subset_input: a subset_input. + * + * Return value: pointer to the set of name language ids to retain. + * + * Since: REPLACE + **/ HB_EXTERN hb_set_t * hb_subset_input_namelangid_set (hb_subset_input_t *subset_input) { return subset_input->name_languages; } + +/** + * hb_subset_input_layout_features_set: + * @subset_input: a subset_input. + * + * Return value: pointer to the set of feature tags to retain. + * + * Since: REPLACE + **/ HB_EXTERN hb_set_t * hb_subset_input_layout_features_set (hb_subset_input_t *subset_input) { @@ -275,7 +302,7 @@ hb_subset_input_layout_features_set (hb_subset_input_t *subset_input) HB_EXTERN void hb_subset_input_set_retain_all_features (hb_subset_input_t *subset_input, - hb_bool_t value) + hb_bool_t value) { subset_input->retain_all_layout_features = value; } @@ -287,18 +314,46 @@ hb_subset_input_get_retain_all_features (hb_subset_input_t *subset_input) } +/** + * hb_subset_input_drop_tabes_set: + * @subset_input: a subset_input. + * + * Return value: pointer to the set of table tags which specifies tables + * to be dropped. + * + * Since: REPLACE + **/ HB_EXTERN hb_set_t * hb_subset_input_drop_tables_set (hb_subset_input_t *subset_input) { return subset_input->drop_tables; } +/** + * hb_subset_input_no_subset_tabes_set: + * @subset_input: a subset_input. + * + * Return value: pointer to the set of table tags which specifies tables + * that should not have subsetting applied to them. + * + * Since: REPLACE + **/ HB_EXTERN hb_set_t * hb_subset_input_no_subset_tables_set (hb_subset_input_t *subset_input) { return subset_input->no_subset_tables; } + +/** + * hb_subset_input_get_flag: + * @subset_input: a subset_input. + * @flag: which flag to check. + * + * Return value: value of the specified flag. + * + * Since: REPLACE + **/ HB_EXTERN hb_bool_t hb_subset_input_get_flag (hb_subset_input_t *input, hb_subset_flag_t flag) @@ -324,6 +379,16 @@ hb_subset_input_get_flag (hb_subset_input_t *input, } } +/** + * hb_subset_input_set_flag: + * @subset_input: a subset_input. + * @flag: which flag to set. + * @value: new value for the flag. + * + * Set the specified flag to @value. + * + * Since: REPLACE + **/ HB_EXTERN void hb_subset_input_set_flag (hb_subset_input_t *input, hb_subset_flag_t flag, diff --git a/src/hb-subset.h b/src/hb-subset.h index 819045875..7fe4dcfd9 100644 --- a/src/hb-subset.h +++ b/src/hb-subset.h @@ -39,35 +39,40 @@ HB_BEGIN_DECLS typedef struct hb_subset_input_t hb_subset_input_t; +/** + * hb_subset_flag_t: + * @HB_SUBSET_FLAG_HINTING: If set hinting instructions will be retained in + * the produced subset. Otherwise hinting instructions will be dropped. + * Defaults to true. + * @HB_SUBSET_FLAG_RETAIN_GIDS: If set glyph indices will not be modified in + * the produced subset. If glyphs are dropped their indices will be retained + * as an empty glyph. Defaults to false. + * @HB_SUBSET_FLAG_DESUBROUTINIZE: If set and subsetting a CFF font the + * subsetter will attempt to remove subroutines from the CFF glyphs. + * Defaults to false. + * @HB_SUBSET_FLAG_NAME_LEGACY: If set non-unicode name records will be + * retained in the subset. Defaults to false. + * @HB_SUBSET_FLAG_SET_OVERLAPS_FLAG: If set the subsetter will set the + * OVERLAP_SIMPLE flag on each simple glyph. Defaults to false. + * @HB_SUBSET_FLAG_PASSTHROUGH_UNRECOGNIZED: If set the subsetter will not + * drop unrecognized tables and instead pass them through untouched. + * Defaults to false. + * @HB_SUBSET_FLAG_NOTDEF_OUTLINE: If set the notdef glyph outline will be + * retained in the final subset. Defaults to false. + * + * List of boolean properties that can be configured on the subset input. + * + * Since: REPLACE + **/ typedef enum { - // If set hinting instructions will be retained in the produced subset. - // Otherwise hinting instructions will be dropped. - // Defaults to true. - HB_SUBSET_FLAG_HINTING = 1, - // If set glyph indices will not be modified in the produced subset. - // If glyphs are dropped their indices will be retained as an empty - // glyph. - // Defaults to false. - HB_SUBSET_FLAG_RETAIN_GIDS = 2, - // If set and subsetting a CFF font the subsetter will attempt to - // remove subroutines from the CFF glyphs. - // Defaults to false. - HB_SUBSET_FLAG_DESUBROUTINIZE = 3, - // If set non-unicode name records will be retained in the subset. - // Defaults to false. - HB_SUBSET_FLAG_NAME_LEGACY = 4, - // If set the subsetter will set the OVERLAP_SIMPLE flag on each - // simple glyph. - // Defaults to false. - HB_SUBSET_FLAG_SET_OVERLAPS_FLAG = 5, - // If set the subsetter will not drop unrecognized tables and instead - // pass them through untouched. - // Defaults to false. - HB_SUBSET_FLAG_PASSTHROUGH_UNRECOGNIZED = 6, - // If set the notdef glyph outline will be retained in the final subset. - // Defaults to false. - HB_SUBSET_FLAG_NOTDEF_OUTLINE = 7, + HB_SUBSET_FLAG_HINTING = 0, + HB_SUBSET_FLAG_RETAIN_GIDS, + HB_SUBSET_FLAG_DESUBROUTINIZE, + HB_SUBSET_FLAG_NAME_LEGACY, + HB_SUBSET_FLAG_SET_OVERLAPS_FLAG, + HB_SUBSET_FLAG_PASSTHROUGH_UNRECOGNIZED, + HB_SUBSET_FLAG_NOTDEF_OUTLINE, } hb_subset_flag_t; HB_EXTERN hb_subset_input_t *