gi-pango-1.0.19: Pango bindings

Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte
License | LGPL-2.1
Maintainer | Iñaki García Etxebarria (garetxe@gmail.com)
Safe Haskell | None
Language | Haskell2010

GI.Pango.Objects.FontFamily

Contents

- Exported types
- Methods
  - getName
  - isMonospace
  - listFaces

Description

The `FontFamily` structure is used to represent a family of related font faces. The faces in a family share a common design, but differ in slant, weight, width and other aspects.

Synopsis

- newtype FontFamily = FontFamily (ManagedPtr FontFamily)
- class GObject o => IsFontFamily o
- toFontFamily :: (MonadIO m, IsFontFamily o) => o -> m FontFamily
- noFontFamily :: Maybe FontFamily
- fontFamilyGetName :: (HasCallStack, MonadIO m, IsFontFamily a) => a -> m Text
- fontFamilyIsMonospace :: (HasCallStack, MonadIO m, IsFontFamily a) => a -> m Bool
- fontFamilyListFaces :: (HasCallStack, MonadIO m, IsFontFamily a) => a -> m [FontFace]

# Exported types

newtype FontFamily Source #

Memory-managed wrapper type.

Constructors

FontFamily (ManagedPtr FontFamily) |

Instances

GObject FontFamily Source # |
Instance details Defined in GI.Pango.Objects.FontFamily Methods gobjectType :: FontFamily -> IO GType Source #
IsObject FontFamily Source # |
Instance details Defined in GI.Pango.Objects.FontFamily
IsFontFamily FontFamily Source # |
Instance details Defined in GI.Pango.Objects.FontFamily

class GObject o => IsFontFamily o Source #

Type class for types which can be safely cast to `FontFamily`, for instance with `toFontFamily`.

Instances

(GObject a, (UnknownAncestorError FontFamily a :: Constraint)) => IsFontFamily a Source # |
Instance details Defined in GI.Pango.Objects.FontFamily
IsFontFamily FontFamily Source # |
Instance details Defined in GI.Pango.Objects.FontFamily

toFontFamily :: (MonadIO m, IsFontFamily o) => o -> m FontFamily Source #

Cast to `FontFamily`, for types for which this is known to be safe. For general casts, use `castTo`.

noFontFamily :: Maybe FontFamily Source #

A convenience alias for `Nothing` :: `Maybe` `FontFamily`.

# Methods

## getName

fontFamilyGetName Source #

Arguments

:: (HasCallStack, MonadIO m, IsFontFamily a) |
=> a | `family`: a `FontFamily`
-> m Text | Returns: the name of the family. This string is owned by the family object and must not be modified or freed.

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.

## isMonospace

fontFamilyIsMonospace Source #

Arguments

:: (HasCallStack, MonadIO m, IsFontFamily a) |
=> a | `family`: a `FontFamily`
-> m Bool | Returns: `True` if the family is monospace.

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. `unicharIswide` 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 `fontMetricsGetApproximateDigitWidth`, since the results of `fontMetricsGetApproximateCharWidth` may be affected by double-width characters.

Since: 1.4

## listFaces

fontFamilyListFaces Source #

Arguments

:: (HasCallStack, MonadIO m, IsFontFamily a) |
=> a | `family`: a `FontFamily`
-> m [FontFace] |

Lists the different font faces that make up `family`. The faces in a family share a common design, but differ in slant, weight, width and other aspects.