Expand description
§Rust Pango bindings
Rust bindings and wrappers for Pango, part of gtk-rs-core.
Pango 1.40 is the lowest supported version for the underlying library.
§Minimum supported Rust version
Currently, the minimum supported Rust version is 1.83.0.
§Documentation
§Using
We recommend using crates from crates.io, as demonstrated here.
If you want to track the bleeding edge, use the git dependency instead:
[dependencies]
pango = { git = "https://github.com/gtk-rs/gtk-rs-core.git", package = "pango" }Avoid mixing versioned and git crates like this:
# This will not compile
[dependencies]
pango = "0.13"
pango = { git = "https://github.com/gtk-rs/gtk-rs-core.git", package = "pango" }§See Also
§License
pango is available under the MIT License, please refer to it.
Re-exports§
Modules§
- prelude
- Traits and essential types intended for blanket imports.
Structs§
- Analysis
- The
Analysisstructure stores information about the properties of a segment of text. - Attr
Class - The
AttrClassstructure stores the type and operations for a particular type of attribute. - Attr
Color - GLib type: Boxed type with copy-on-clone semantics.
- Attr
Float - GLib type: Boxed type with copy-on-clone semantics.
- Attr
Font Desc - GLib type: Boxed type with copy-on-clone semantics.
- Attr
Font Features - GLib type: Boxed type with copy-on-clone semantics.
- AttrInt
- GLib type: Boxed type with copy-on-clone semantics.
- Attr
Into Iter - Attr
Iterator - A
AttrIteratoris used to iterate through aAttrList. - Attr
Language - GLib type: Boxed type with copy-on-clone semantics.
- Attr
List - A
AttrListrepresents a list of attributes that apply to a section of text. - Attr
Shape - GLib type: Boxed type with copy-on-clone semantics.
- Attr
Size - GLib type: Boxed type with copy-on-clone semantics.
- Attr
String - GLib type: Boxed type with copy-on-clone semantics.
- Attribute
- The
Attributestructure represents the common portions of all attributes. - Color
- The
Colorstructure is used to represent a color in an uncalibrated RGB color-space. - Context
- A
Contextstores global information used to control the itemization process. - Coverage
- A
Coveragestructure is a map from Unicode characters toCoverageLevelvalues. - Font
- A
Fontis used to represent a font in a rendering-system-independent manner. - Font
Description - A
FontDescriptiondescribes a font in an implementation-independent manner. - Font
Face - A
FontFaceis used to represent a group of fonts with the same family, slant, weight, and width, but varying sizes. - Font
Family - A
FontFamilyis used to represent a family of related font faces. - FontMap
- A
FontMaprepresents the set of fonts available for a particular rendering system. - Font
Mask - The bits in a
FontMaskcorrespond to the set fields in aFontDescription. - Font
Metrics - A
FontMetricsstructure holds the overall metric information for a font. - Fontset
- A
Fontsetrepresents a set ofFontto use when rendering text. - Fontset
Simple FontsetSimpleis a implementation of the abstractFontsetbase class as an array of fonts.- Glyph
Geometry - The
GlyphGeometrystructure contains width and positioning information for a single glyph. - Glyph
Info - A
GlyphInfostructure represents a single glyph with positioning information and visual attributes. - Glyph
Item - A
GlyphItemis a pair of aItemand the glyphs resulting from shaping the items text. - Glyph
Item Into Iter - Glyph
Item Iter - A
GlyphItemIteris an iterator over the clusters in aGlyphItem. - Glyph
String - A
GlyphStringis used to store strings of glyphs with geometry and visual attribute information. - HitPosition
- The result of
LayoutLine::x_to_index. - Item
- The
Itemstructure stores information about a segment of text. - Language
- The
Languagestructure is used to represent a language. - Layout
- A
Layoutstructure represents an entire paragraph of text. - Layout
Deserialize Flags v1_50 - Flags that influence the behavior of
Pango::Layout::deserialize(). - Layout
Iter - A
LayoutItercan be used to iterate over the visual extents of aLayout. - Layout
Line - A
LayoutLinerepresents one of the lines resulting from laying out a paragraph viaLayout. - Layout
Serialize Flags v1_50 - Flags that influence the behavior of
Layout::serialize(). - Matrix
- A
Matrixspecifies a transformation between user-space and device coordinates. - Rectangle
- The
Rectanglestructure represents a rectangle. - Renderer
Rendereris a base class for objects that can render text provided asGlyphStringorLayout.- Script
Into Iter - Script
Iter - A
ScriptIteris used to iterate through a string and identify ranges in different scripts. - Shape
Flags v1_44 - Flags influencing the shaping process.
- Show
Flags v1_44 - These flags affect how Pango treats characters that are normally not visible in the output.
- TabArray
- A
TabArraycontains an array of tab stops.
Enums§
- Alignment
Alignmentdescribes how to align the lines of aLayoutwithin the available space.- Attr
Type - The
AttrTypedistinguishes between different types of attributes. - Baseline
Shift v1_50 - An enumeration that affects baseline shifts between runs.
- Bidi
Type Deprecated BidiTyperepresents the bidirectional character type of a Unicode character.- Coverage
Level CoverageLevelis used to indicate how well a font can represent a particular Unicode character for a particular script.- Direction
Directionrepresents a direction in the Unicode bidirectional algorithm.- Ellipsize
Mode EllipsizeModedescribes what sort of ellipsization should be applied to text.- Font
Color v1_57 - Specifies whether a font should or should not have color glyphs.
- Font
Scale v1_50 - An enumeration that affects font sizes for superscript and subscript positioning and for (emulated) Small Caps.
- Gravity
Gravityrepresents the orientation of glyphs in a segment of text.- Gravity
Hint GravityHintdefines how horizontal scripts should behave in a vertical context.- Overline
v1_46 - The
Overlineenumeration is used to specify whether text should be overlined, and if so, the type of line. - Render
Part RenderPartdefines different items to render for such purposes as setting colors.- Script
- The
Scriptenumeration identifies different writing systems. - Stretch
- An enumeration specifying the width of the font relative to other designs within a family.
- Style
- An enumeration specifying the various slant styles possible for a font.
- TabAlign
TabAlignspecifies where the text appears relative to the tab stop position.- Text
Transform v1_50 - An enumeration that affects how Pango treats characters during shaping.
- Underline
- The
Underlineenumeration is used to specify whether text should be underlined, and if so, the type of underlining. - Variant
- An enumeration specifying capitalization variant of the font.
- Weight
- An enumeration specifying the weight (boldness) of a font.
- Wrap
Mode WrapModedescribes how to wrap the lines of aLayoutto the desired width.
Constants§
- ANALYSIS_
FLAG_ CENTERED_ BASELINE - Whether the segment should be shifted to center around the baseline.
- ANALYSIS_
FLAG_ IS_ ELLIPSIS - Whether this run holds ellipsized text.
- ANALYSIS_
FLAG_ NEED_ HYPHEN - Whether to add a hyphen at the end of the run during shaping.
- ATTR_
INDEX_ FROM_ TEXT_ BEGINNING - Value for @start_index in
Attributethat indicates the beginning of the text. - ATTR_
INDEX_ TO_ TEXT_ END - Value for @end_index in
Attributethat indicates the end of the text. - GLYPH_
EMPTY - A
PangoGlyphvalue that indicates a zero-width empty glpyh. - GLYPH_
INVALID_ INPUT - A
PangoGlyphvalue for invalid input. - GLYPH_
UNKNOWN_ FLAG - Flag used in
PangoGlyphto turn agunicharvalue of a valid Unicode character into an unknown-character glyph for thatgunichar. - SCALE
- The scale between dimensions used for Pango distances and device units.
- SCALE_
LARGE - The scale factor for one magnification step (1.2).
- SCALE_
MEDIUM - The scale factor for normal size (1.0).
- SCALE_
SMALL - The scale factor for one shrinking step (1 / 1.2).
- SCALE_
XX_ LARGE - The scale factor for three magnification steps (1.2 * 1.2 * 1.2).
- SCALE_
XX_ SMALL - The scale factor for three shrinking steps (1 / (1.2 * 1.2 * 1.2)).
- SCALE_
X_ LARGE - The scale factor for two magnification steps (1.2 * 1.2).
- SCALE_
X_ SMALL - The scale factor for two shrinking steps (1 / (1.2 * 1.2)).
Traits§
Functions§
- extents_
to_ pixels - Converts extents from Pango units to device units.
- find_
base_ dir - Searches a string the first character that has a strong direction, according to the Unicode bidirectional algorithm.
- find_
paragraph_ boundary - Locates a paragraph boundary in @text.
- is_
zero_ width - Checks if a character that should not be normally rendered.
- itemize
- Breaks a piece of text into segments with consistent directional level and font.
- itemize_
with_ base_ dir - Like
pango_itemize(), but with an explicitly specified base direction. - markup_
parser_ finish - Finishes parsing markup.
- markup_
parser_ new - Incrementally parses marked-up text to create a plain-text string and an attribute list.
- parse_
markup - Parses marked-up text to create a plain-text string and an attribute list.
- parse_
stretch - Parses a font stretch.
- parse_
style - Parses a font style.
- parse_
variant - Parses a font variant.
- parse_
weight - Parses a font weight.
- quantize_
line_ geometry - Quantizes the thickness and position of a line to whole device pixels.
- reorder_
items - Reorder items from logical order to visual order.
- shape
- Convert the characters in @text into glyphs.
- shape_
full - Convert the characters in @text into glyphs.
- shape_
with_ flags v1_44 - Convert the characters in @text into glyphs.
- unichar_
direction - Determines the inherent direction of a character.
- units_
from_ double - Converts a floating-point number to Pango units.
- units_
to_ double - Converts a number in Pango units to floating-point.
- version
- Returns the encoded version of Pango available at run-time.
- version_
check - Checks that the Pango library in use is compatible with the given version.
- version_
string - Returns the version of Pango available at run-time.