| Pango Reference Manual | ||||
|---|---|---|---|---|
enum PangoGravity; #define PANGO_TYPE_GRAVITY enum PangoGravityHint; #define PANGO_TYPE_GRAVITY_HINT #define PANGO_GRAVITY_IS_VERTICAL (gravity) PangoGravity pango_gravity_get_for_matrix (const PangoMatrix *matrix); PangoGravity pango_gravity_get_for_script (PangoScript script, PangoGravity base_gravity, PangoGravityHint hint);
Since 1.16, Pango is able to correctly lay vertical text out. In fact, it can set layouts of mixed vertical and non-vertical text. This section describes the types used for setting vertical text parameters.
typedef enum {
PANGO_GRAVITY_SOUTH,
PANGO_GRAVITY_EAST,
PANGO_GRAVITY_NORTH,
PANGO_GRAVITY_WEST,
PANGO_GRAVITY_AUTO
} PangoGravity;
The PangoGravity type represents the orientation of glyphs in a segment
of text. This is useful when rendering vertical text layouts. In
those situations, the layout is rotated using a non-identity PangoMatrix,
and then glyph orientation is controlled using PangoGravity.
Not every value in this enumeration makes sense for every usage of
PangoGravity; for example, PANGO_GRAVITY_AUTO only can be passed to
pango_context_set_base_gravity() and can only be returned by
pango_context_get_base_gravity().
See also: PangoGravityHint
Since 1.16
#define PANGO_TYPE_GRAVITY (pango_gravity_get_type())
The GObject type for PangoGravity.
typedef enum {
PANGO_GRAVITY_HINT_NATURAL,
PANGO_GRAVITY_HINT_STRONG,
PANGO_GRAVITY_HINT_LINE
} PangoGravityHint;
The PangoGravityHint defines how horizontal scripts should behave in a vertical context. That is, English excerpt in a vertical paragraph for example.
See PangoGravity.
Since 1.16
#define PANGO_TYPE_GRAVITY_HINT (pango_gravity_hint_get_type())
The GObject type for PangoGravity.
#define PANGO_GRAVITY_IS_VERTICAL(gravity)
Whether a PangoGravity represents vertical writing directions.
gravity : |
the PangoGravity to check |
Since 1.16
PangoGravity pango_gravity_get_for_matrix (const PangoMatrix *matrix);
Finds the gravity that best matches the rotation component in a PangoMatrix.
matrix : |
a PangoMatrix |
| Returns : | the gravity of matrix, which will never be
PANGO_GRAVITY_AUTO, or PANGO_GRAVITY_SOUTH if matrix is NULL
|
Since 1.16
PangoGravity pango_gravity_get_for_script (PangoScript script, PangoGravity base_gravity, PangoGravityHint hint);
Based on the script, base gravity, and hint, returns actual gravity to use in laying out a single PangoItem.
If base_gravity is PANGO_GRAVITY_AUTO, it is first replaced with the
preferred gravity of script. To get the preferred gravity of a script,
pass PANGO_GRAVITY_AUTO and PANGO_GRAVITY_HINT_STRONG in.
script : |
PangoScript to query |
base_gravity : |
base gravity of the paragraph |
hint : |
orientation hint |
| Returns : | resolved gravity suitable to use for a run of text |
Since 1.16