![]() | ![]() | ![]() | 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 : | the newly allocated PangoCoverage,
initialized to PANGO_COVERAGE_NONE
with a reference count of one, which
should be freed with pango_coverage_unref() .
|
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 : | the newly allocated PangoCoverage,
with a reference count of one, which
should be freed with pango_coverage_unref() .
|
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 >> |