QtBase  v6.3.1
Classes | Typedefs | Enumerations | Functions
hb-ot-name.h File Reference
#include "hb.h"
Include dependency graph for hb-ot-name.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  hb_ot_name_entry_t
 

Typedefs

typedef unsigned int hb_ot_name_id_t
 
typedef struct hb_ot_name_entry_t hb_ot_name_entry_t
 

Enumerations

enum  {
  HB_OT_NAME_ID_COPYRIGHT = 0 , HB_OT_NAME_ID_FONT_FAMILY = 1 , HB_OT_NAME_ID_FONT_SUBFAMILY = 2 , HB_OT_NAME_ID_UNIQUE_ID = 3 ,
  HB_OT_NAME_ID_FULL_NAME = 4 , HB_OT_NAME_ID_VERSION_STRING = 5 , HB_OT_NAME_ID_POSTSCRIPT_NAME = 6 , HB_OT_NAME_ID_TRADEMARK = 7 ,
  HB_OT_NAME_ID_MANUFACTURER = 8 , HB_OT_NAME_ID_DESIGNER = 9 , HB_OT_NAME_ID_DESCRIPTION = 10 , HB_OT_NAME_ID_VENDOR_URL = 11 ,
  HB_OT_NAME_ID_DESIGNER_URL = 12 , HB_OT_NAME_ID_LICENSE = 13 , HB_OT_NAME_ID_LICENSE_URL = 14 , HB_OT_NAME_ID_TYPOGRAPHIC_FAMILY = 16 ,
  HB_OT_NAME_ID_TYPOGRAPHIC_SUBFAMILY = 17 , HB_OT_NAME_ID_MAC_FULL_NAME = 18 , HB_OT_NAME_ID_SAMPLE_TEXT = 19 , HB_OT_NAME_ID_CID_FINDFONT_NAME = 20 ,
  HB_OT_NAME_ID_WWS_FAMILY = 21 , HB_OT_NAME_ID_WWS_SUBFAMILY = 22 , HB_OT_NAME_ID_LIGHT_BACKGROUND = 23 , HB_OT_NAME_ID_DARK_BACKGROUND = 24 ,
  HB_OT_NAME_ID_VARIATIONS_PS_PREFIX = 25 , HB_OT_NAME_ID_INVALID = 0xFFFF
}
 

Functions

HB_EXTERN const hb_ot_name_entry_thb_ot_name_list_names (hb_face_t *face, unsigned int *num_entries)
 
HB_EXTERN unsigned int hb_ot_name_get_utf8 (hb_face_t *face, hb_ot_name_id_t name_id, hb_language_t language, unsigned int *text_size, char *text)
 
HB_EXTERN unsigned int hb_ot_name_get_utf16 (hb_face_t *face, hb_ot_name_id_t name_id, hb_language_t language, unsigned int *text_size, uint16_t *text)
 
HB_EXTERN unsigned int hb_ot_name_get_utf32 (hb_face_t *face, hb_ot_name_id_t name_id, hb_language_t language, unsigned int *text_size, uint32_t *text)
 

Typedef Documentation

◆ hb_ot_name_entry_t

hb_ot_name_entry_t: @name_id: name ID @language: language

Structure representing a name ID in a particular language.

Since: 2.1.0

◆ hb_ot_name_id_t

typedef unsigned int hb_ot_name_id_t

Definition at line 109 of file hb-ot-name.h.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

hb_ot_name_id_t: @HB_OT_NAME_ID_COPYRIGHT: Copyright notice @HB_OT_NAME_ID_FONT_FAMILY: Font Family name @HB_OT_NAME_ID_FONT_SUBFAMILY: Font Subfamily name @HB_OT_NAME_ID_UNIQUE_ID: Unique font identifier @HB_OT_NAME_ID_FULL_NAME: Full font name that reflects all family and relevant subfamily descriptors @HB_OT_NAME_ID_VERSION_STRING: Version string @HB_OT_NAME_ID_POSTSCRIPT_NAME: PostScript name for the font @HB_OT_NAME_ID_TRADEMARK: Trademark @HB_OT_NAME_ID_MANUFACTURER: Manufacturer Name @HB_OT_NAME_ID_DESIGNER: Designer @HB_OT_NAME_ID_DESCRIPTION: Description @HB_OT_NAME_ID_VENDOR_URL: URL of font vendor @HB_OT_NAME_ID_DESIGNER_URL: URL of typeface designer @HB_OT_NAME_ID_LICENSE: License Description @HB_OT_NAME_ID_LICENSE_URL: URL where additional licensing information can be found @HB_OT_NAME_ID_TYPOGRAPHIC_FAMILY: Typographic Family name @HB_OT_NAME_ID_TYPOGRAPHIC_SUBFAMILY: Typographic Subfamily name @HB_OT_NAME_ID_MAC_FULL_NAME: Compatible Full Name for MacOS @HB_OT_NAME_ID_SAMPLE_TEXT: Sample text @HB_OT_NAME_ID_CID_FINDFONT_NAME: PostScript CID findfont name @HB_OT_NAME_ID_WWS_FAMILY: WWS Family Name @HB_OT_NAME_ID_WWS_SUBFAMILY: WWS Subfamily Name @HB_OT_NAME_ID_LIGHT_BACKGROUND: Light Background Palette @HB_OT_NAME_ID_DARK_BACKGROUND: Dark Background Palette @HB_OT_NAME_ID_VARIATIONS_PS_PREFIX: Variations PostScript Name Prefix @HB_OT_NAME_ID_INVALID: Value to represent a nonexistent name ID.

An integral type representing an OpenType 'name' table name identifier. There are predefined name IDs, as well as name IDs return from other API. These can be used to fetch name strings from a font face.

For more information on these fields, see the OpenType spec.

Since: 2.0.0

Enumerator
HB_OT_NAME_ID_COPYRIGHT 
HB_OT_NAME_ID_FONT_FAMILY 
HB_OT_NAME_ID_FONT_SUBFAMILY 
HB_OT_NAME_ID_UNIQUE_ID 
HB_OT_NAME_ID_FULL_NAME 
HB_OT_NAME_ID_VERSION_STRING 
HB_OT_NAME_ID_POSTSCRIPT_NAME 
HB_OT_NAME_ID_TRADEMARK 
HB_OT_NAME_ID_MANUFACTURER 
HB_OT_NAME_ID_DESIGNER 
HB_OT_NAME_ID_DESCRIPTION 
HB_OT_NAME_ID_VENDOR_URL 
HB_OT_NAME_ID_DESIGNER_URL 
HB_OT_NAME_ID_LICENSE 
HB_OT_NAME_ID_LICENSE_URL 
HB_OT_NAME_ID_TYPOGRAPHIC_FAMILY 
HB_OT_NAME_ID_TYPOGRAPHIC_SUBFAMILY 
HB_OT_NAME_ID_MAC_FULL_NAME 
HB_OT_NAME_ID_SAMPLE_TEXT 
HB_OT_NAME_ID_CID_FINDFONT_NAME 
HB_OT_NAME_ID_WWS_FAMILY 
HB_OT_NAME_ID_WWS_SUBFAMILY 
HB_OT_NAME_ID_LIGHT_BACKGROUND 
HB_OT_NAME_ID_DARK_BACKGROUND 
HB_OT_NAME_ID_VARIATIONS_PS_PREFIX 
HB_OT_NAME_ID_INVALID 

Definition at line 77 of file hb-ot-name.h.

Function Documentation

◆ hb_ot_name_get_utf16()

HB_EXTERN unsigned int hb_ot_name_get_utf16 ( hb_face_t face,
hb_ot_name_id_t  name_id,
hb_language_t  language,
unsigned int *  text_size,
uint16_t *  text 
)

hb_ot_name_get_utf16: @face: font face. @name_id: OpenType name identifier to fetch. @language: language to fetch the name for. @text_size: (inout) (optional): input size of @text buffer, and output size of text written to buffer. @text: (out caller-allocates) (array length=text_size): buffer to write fetched name into.

Fetches a font name from the OpenType 'name' table. If @language is HB_LANGUAGE_INVALID, English ("en") is assumed. Returns string in UTF-16 encoding. A NUL terminator is always written for convenience, and isn't included in the output @text_size.

Returns: full length of the requested string, or 0 if not found. Since: 2.1.0

Definition at line 194 of file hb-ot-name.cc.

◆ hb_ot_name_get_utf32()

HB_EXTERN unsigned int hb_ot_name_get_utf32 ( hb_face_t face,
hb_ot_name_id_t  name_id,
hb_language_t  language,
unsigned int *  text_size,
uint32_t *  text 
)

hb_ot_name_get_utf32: @face: font face. @name_id: OpenType name identifier to fetch. @language: language to fetch the name for. @text_size: (inout) (optional): input size of @text buffer, and output size of text written to buffer. @text: (out caller-allocates) (array length=text_size): buffer to write fetched name into.

Fetches a font name from the OpenType 'name' table. If @language is HB_LANGUAGE_INVALID, English ("en") is assumed. Returns string in UTF-32 encoding. A NUL terminator is always written for convenience, and isn't included in the output @text_size.

Returns: full length of the requested string, or 0 if not found. Since: 2.1.0

Definition at line 221 of file hb-ot-name.cc.

◆ hb_ot_name_get_utf8()

HB_EXTERN unsigned int hb_ot_name_get_utf8 ( hb_face_t face,
hb_ot_name_id_t  name_id,
hb_language_t  language,
unsigned int *  text_size,
char *  text 
)

hb_ot_name_get_utf8: @face: font face. @name_id: OpenType name identifier to fetch. @language: language to fetch the name for. @text_size: (inout) (optional): input size of @text buffer, and output size of text written to buffer. @text: (out caller-allocates) (array length=text_size): buffer to write fetched name into.

Fetches a font name from the OpenType 'name' table. If @language is HB_LANGUAGE_INVALID, English ("en") is assumed. Returns string in UTF-8 encoding. A NUL terminator is always written for convenience, and isn't included in the output @text_size.

Returns: full length of the requested string, or 0 if not found. Since: 2.1.0

Definition at line 166 of file hb-ot-name.cc.

◆ hb_ot_name_list_names()

HB_EXTERN const hb_ot_name_entry_t* hb_ot_name_list_names ( hb_face_t face,
unsigned int *  num_entries 
)

SECTION:hb-ot-name @title: hb-ot-name @short_description: OpenType font name information hb-ot.h

Functions for fetching name strings from OpenType fonts. hb_ot_name_list_names: @face: font face. @num_entries: (out) (optional): number of returned entries.

Enumerates all available name IDs and language combinations. Returned array is owned by the @face and should not be modified. It can be used as long as @face is alive.

Returns: (transfer none) (array length=num_entries): Array of available name entries. Since: 2.1.0

Definition at line 59 of file hb-ot-name.cc.