Trait pango::prelude::FontFamilyExt
source · pub trait FontFamilyExt: 'static {
// Required methods
fn face(&self, name: Option<&str>) -> Option<FontFace>;
fn name(&self) -> Option<GString>;
fn is_monospace(&self) -> bool;
fn is_variable(&self) -> bool;
fn list_faces(&self) -> Vec<FontFace>;
}
Expand description
Required Methods§
sourcefn name(&self) -> Option<GString>
fn name(&self) -> Option<GString>
Gets the name of the family.
The name is unique among all fonts for the font backend and can
be used in a FontDescription
to specify that a face from
this family is desired.
Returns
the name of the family. This string is owned by the family object and must not be modified or freed.
sourcefn is_monospace(&self) -> bool
fn is_monospace(&self) -> bool
A monospace font is a font designed for text display where the the characters form a regular grid.
For Western languages this would mean that the advance width of all characters are the same, but this categorization also includes Asian fonts which include double-width characters: characters that occupy two grid cells. g_unichar_iswide() returns a result that indicates whether a character is typically double-width in a monospace font.
The best way to find out the grid-cell size is to call
FontMetrics::approximate_digit_width()
, since the
results of FontMetrics::approximate_char_width()
may
be affected by double-width characters.
Returns
true
if the family is monospace.
sourcefn is_variable(&self) -> bool
fn is_variable(&self) -> bool
v1_44
only.A variable font is a font which has axes that can be modified to produce different faces.
Such axes are also known as variations; see
FontDescription::set_variations()
for more information.
Returns
true
if the family is variable
sourcefn list_faces(&self) -> Vec<FontFace>
fn list_faces(&self) -> Vec<FontFace>
Lists the different font faces that make up @self.
The faces in a family share a common design, but differ in slant, weight, width and other aspects.
Note that the returned faces are not in any particular order, and multiple faces may have the same name or characteristics.
FontFamily
also implemented the Gio::ListModel
interface
for enumerating faces.
Returns
faces
location to store an array of pointers to FontFace
objects,
or None
. This array should be freed with g_free() when it is no
longer needed.