[subset] add documentation for all hb-subset.h methods.

This commit is contained in:
Garret Rieger 2021-06-23 13:55:11 -07:00
parent 9ab751ac9f
commit 8ce9683412
2 changed files with 100 additions and 30 deletions

View File

@ -198,8 +198,6 @@ hb_subset_input_create_or_fail ()
* hb_subset_input_reference: (skip) * hb_subset_input_reference: (skip)
* @subset_input: a subset_input. * @subset_input: a subset_input.
* *
*
*
* Return value: * Return value:
* *
* Since: 1.8.0 * Since: 1.8.0
@ -235,6 +233,8 @@ hb_subset_input_destroy (hb_subset_input_t *subset_input)
* hb_subset_input_unicode_set: * hb_subset_input_unicode_set:
* @subset_input: a subset_input. * @subset_input: a subset_input.
* *
* Return value: pointer to the set of unicode codepoints to retain.
*
* Since: 1.8.0 * Since: 1.8.0
**/ **/
HB_EXTERN hb_set_t * 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: * hb_subset_input_glyph_set:
* @subset_input: a subset_input. * @subset_input: a subset_input.
* *
* Return value: pointer to the set of glyph ids to retain.
*
* Since: 1.8.0 * Since: 1.8.0
**/ **/
HB_EXTERN hb_set_t * HB_EXTERN hb_set_t *
@ -255,18 +257,43 @@ hb_subset_input_glyph_set (hb_subset_input_t *subset_input)
return subset_input->glyphs; 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_EXTERN hb_set_t *
hb_subset_input_nameid_set (hb_subset_input_t *subset_input) hb_subset_input_nameid_set (hb_subset_input_t *subset_input)
{ {
return subset_input->name_ids; 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_EXTERN hb_set_t *
hb_subset_input_namelangid_set (hb_subset_input_t *subset_input) hb_subset_input_namelangid_set (hb_subset_input_t *subset_input)
{ {
return subset_input->name_languages; 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_EXTERN hb_set_t *
hb_subset_input_layout_features_set (hb_subset_input_t *subset_input) hb_subset_input_layout_features_set (hb_subset_input_t *subset_input)
{ {
@ -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_EXTERN hb_set_t *
hb_subset_input_drop_tables_set (hb_subset_input_t *subset_input) hb_subset_input_drop_tables_set (hb_subset_input_t *subset_input)
{ {
return subset_input->drop_tables; 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_EXTERN hb_set_t *
hb_subset_input_no_subset_tables_set (hb_subset_input_t *subset_input) hb_subset_input_no_subset_tables_set (hb_subset_input_t *subset_input)
{ {
return subset_input->no_subset_tables; 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_EXTERN hb_bool_t
hb_subset_input_get_flag (hb_subset_input_t *input, hb_subset_input_get_flag (hb_subset_input_t *input,
hb_subset_flag_t flag) 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_EXTERN void
hb_subset_input_set_flag (hb_subset_input_t *input, hb_subset_input_set_flag (hb_subset_input_t *input,
hb_subset_flag_t flag, hb_subset_flag_t flag,

View File

@ -39,35 +39,40 @@ HB_BEGIN_DECLS
typedef struct hb_subset_input_t hb_subset_input_t; 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 typedef enum
{ {
// If set hinting instructions will be retained in the produced subset. HB_SUBSET_FLAG_HINTING = 0,
// Otherwise hinting instructions will be dropped. HB_SUBSET_FLAG_RETAIN_GIDS,
// Defaults to true. HB_SUBSET_FLAG_DESUBROUTINIZE,
HB_SUBSET_FLAG_HINTING = 1, HB_SUBSET_FLAG_NAME_LEGACY,
// If set glyph indices will not be modified in the produced subset. HB_SUBSET_FLAG_SET_OVERLAPS_FLAG,
// If glyphs are dropped their indices will be retained as an empty HB_SUBSET_FLAG_PASSTHROUGH_UNRECOGNIZED,
// glyph. HB_SUBSET_FLAG_NOTDEF_OUTLINE,
// 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_t; } hb_subset_flag_t;
HB_EXTERN hb_subset_input_t * HB_EXTERN hb_subset_input_t *