gi-pango-1.0.23: Pango bindings

Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte
License | LGPL-2.1
Maintainer | Iñaki García Etxebarria
Safe Haskell | None
Language | Haskell2010

GI.Pango.Objects.FontFamily

Contents

- Exported types
- Methods
  - Overloaded methods
  - getFace
  - getName
  - isMonospace
  - isVariable
  - 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, IsDescendantOf FontFamily o) => IsFontFamily o
- toFontFamily :: (MonadIO m, IsFontFamily o) => o -> m FontFamily
- fontFamilyGetFace :: (HasCallStack, MonadIO m, IsFontFamily a) => a -> Maybe Text -> m (Maybe FontFace)
- fontFamilyGetName :: (HasCallStack, MonadIO m, IsFontFamily a) => a -> m Text
- fontFamilyIsMonospace :: (HasCallStack, MonadIO m, IsFontFamily a) => a -> m Bool
- fontFamilyIsVariable :: (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

Instances details

Eq FontFamily Source # |
Instance details Defined in GI.Pango.Objects.FontFamily Methods (==) :: FontFamily -> FontFamily -> Bool # (/=) :: FontFamily -> FontFamily -> Bool #
GObject FontFamily Source # |
Instance details Defined in GI.Pango.Objects.FontFamily
TypedObject FontFamily Source # |
Instance details Defined in GI.Pango.Objects.FontFamily Methods glibType :: IO GType Source #
ManagedPtrNewtype FontFamily Source # |
Instance details Defined in GI.Pango.Objects.FontFamily Methods toManagedPtr :: FontFamily -> ManagedPtr FontFamily Source #
IsGValue FontFamily Source # | Convert `FontFamily` to and from `GValue` with `toGValue` and `fromGValue`.
Instance details Defined in GI.Pango.Objects.FontFamily Methods toGValue :: FontFamily -> IO GValue Source # fromGValue :: GValue -> IO FontFamily Source #
HasParentTypes FontFamily Source # |
Instance details Defined in GI.Pango.Objects.FontFamily
type ParentTypes FontFamily Source # |
Instance details Defined in GI.Pango.Objects.FontFamily type ParentTypes FontFamily = '[Object]

class (GObject o, IsDescendantOf FontFamily o) => IsFontFamily o Source #

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

#### Instances

Instances details

(GObject o, IsDescendantOf FontFamily o) => IsFontFamily o 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`.

# Methods

## Overloaded methods

## getFace

fontFamilyGetFace Source #

Arguments

:: (HasCallStack, MonadIO m, IsFontFamily a) |
=> a | `family`: a `FontFamily`
-> Maybe Text | `name`: the name of a face. If the name is `Nothing`, the family's default face (fontconfig calls it "Regular") will be returned.
-> m (Maybe FontFace) | Returns: the `FontFace`, or `Nothing` if no face with the given name exists.

Gets the `FontFace` of `family` with the given name.

Since: 1.46

## 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

## isVariable

fontFamilyIsVariable Source #

Arguments

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

A variable font is a font which has axes that can be modified to produce different faces.

Since: 1.44

## 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.