Pango Reference Manual |
---|
Coverage MapsCoverage Maps — Unicode character range coverage storage |
enum PangoCoverageLevel; #define PANGO_TYPE_COVERAGE_LEVEL PangoCoverage; PangoCoverage* pango_coverage_new (void); PangoCoverage* pango_coverage_ref (PangoCoverage *coverage); void pango_coverage_unref (PangoCoverage *coverage); PangoCoverage* pango_coverage_copy (PangoCoverage *coverage); PangoCoverageLevel pango_coverage_get (PangoCoverage *coverage, int index_); void pango_coverage_max (PangoCoverage *coverage, PangoCoverage *other); void pango_coverage_set (PangoCoverage *coverage, int index_, PangoCoverageLevel level); void pango_coverage_to_bytes (PangoCoverage *coverage, guchar **bytes, int *n_bytes); PangoCoverage* pango_coverage_from_bytes (guchar *bytes, int n_bytes);
It is often necessary in Pango to determine if a particular font can represent a particular character, and also how well it can represent that character. The PangoCoverage is a data structure that is used to represent that information.
typedef enum { PANGO_COVERAGE_NONE, PANGO_COVERAGE_FALLBACK, PANGO_COVERAGE_APPROXIMATE, PANGO_COVERAGE_EXACT } PangoCoverageLevel;
Used to indicate how well a font can represent a particular ISO 10646 character point for a particular script.
PANGO_COVERAGE_NONE | The character is not representable with the font. |
PANGO_COVERAGE_FALLBACK | The character is represented in a way that may be comprehensible but is not the correct graphical form. For instance, a Hangul character represented as a a sequence of Jamos, or a Latin transliteration of a Cyrillic word. |
PANGO_COVERAGE_APPROXIMATE | The character is represented as basically the correct graphical form, but with a stylistic variant inappropriate for the current script. |
PANGO_COVERAGE_EXACT | The character is represented as the correct graphical form. |
#define PANGO_TYPE_COVERAGE_LEVEL (pango_coverage_level_get_type())
The GObject type for PangoCoverageLevel.
typedef struct _PangoCoverage PangoCoverage;
The PangoCoverage structure represents a map from ISO-10646 character point to PangoCoverageLevel. It is an opaque structure with no public fields.
PangoCoverage* pango_coverage_new (void);
Create a new PangoCoverage
Returns : | a new PangoCoverage object, initialized to PANGO_COVERAGE_NONE with a reference count of 0. |
PangoCoverage* pango_coverage_ref (PangoCoverage *coverage);
Increase the reference count on the PangoCoverage by one
coverage : | a PangoCoverage |
Returns : | coverage |
void pango_coverage_unref (PangoCoverage *coverage);
Increase the reference count on the PangoCoverage by one. if the result is zero, free the coverage and all associated memory.
coverage : | a PangoCoverage |
PangoCoverage* pango_coverage_copy (PangoCoverage *coverage);
Copy an existing PangoCoverage. (This function may now be unecessary since we refcount the structure. Mail otaylorredhat.com if you use it.)
coverage : | a PangoCoverage |
Returns : | a copy of coverage with a reference count of 1 |
PangoCoverageLevel pango_coverage_get (PangoCoverage *coverage, int index_);
Determine whether a particular index is covered by coverage
coverage : | a PangoCoverage |
index_ : | the index to check |
Returns : |
void pango_coverage_max (PangoCoverage *coverage, PangoCoverage *other);
Set the coverage for each index in coverage to be the max (better) value of the current coverage for the index and the coverage for the corresponding index in other.
coverage : | a PangoCoverage |
other : | another PangoCoverage |
void pango_coverage_set (PangoCoverage *coverage, int index_, PangoCoverageLevel level);
Modify a particular index within coverage
coverage : | a PangoCoverage |
index_ : | the index to modify |
level : | the new level for index_ |
void pango_coverage_to_bytes (PangoCoverage *coverage, guchar **bytes, int *n_bytes);
Convert a PangoCoverage structure into a flat binary format
coverage : | a PangoCoverage |
bytes : | location to store result (must be freed with g_free()) |
n_bytes : | location to store size of result |
PangoCoverage* pango_coverage_from_bytes (guchar *bytes, int n_bytes);
Convert data generated from pango_converage_to_bytes() back to a PangoCoverage
bytes : | binary data representing a PangoCoverage |
n_bytes : | the size of bytes in bytes |
Returns : | a newly allocated PangoCoverage, or NULL if the data was invalid. |
<< OpenType Font Handling | Engines >> |