cairomm 1.18.1

Public Types | Public Member Functions | Protected Attributes | List of all members
Cairo::FontOptions Class Reference

The font options specify how fonts should be rendered. More...

`#include <cairomm/fontoptions.h>`

## Public Types
enum class | HintStyle { DEFAULT = CAIRO_HINT_STYLE_DEFAULT , NONE = CAIRO_HINT_STYLE_NONE , SLIGHT = CAIRO_HINT_STYLE_SLIGHT , MEDIUM = CAIRO_HINT_STYLE_MEDIUM , FULL = CAIRO_HINT_STYLE_FULL }
| Specifies the type of hinting to do on font outlines. More...
enum class | HintMetrics { DEFAULT = CAIRO_HINT_METRICS_DEFAULT , OFF = CAIRO_HINT_METRICS_OFF , ON = CAIRO_HINT_METRICS_ON }
| Specifies whether to hint font metrics; hinting font metrics means quantizing them so that they are integer values in device space. More...
typedef cairo_font_options_t | cobject

## Public Member Functions
| FontOptions ()
| FontOptions (cairo_font_options_t *cobject, bool take_ownership=false)
| FontOptions (const FontOptions & src)
virtual | ~FontOptions ()
FontOptions & | operator= (const FontOptions & src)
bool | operator== (const FontOptions & src) const
void | merge (const FontOptions & other)
| Merges non-default options from other into this, replacing existing values.
unsigned long | hash () const
| Compute a hash for the font options object; this value will be useful when storing an object containing a FontOptions in a hash table.
void | set_antialias (Antialias antialias)
| Sets the antialiasing mode for the font options object.
Antialias | get_antialias () const
| Gets the antialiasing mode for the font options object.
void | set_subpixel_order (SubpixelOrder subpixel_order)
| Sets the subpixel order for the font options object.
SubpixelOrder | get_subpixel_order () const
| Gets the subpixel order for the font options object.
void | set_hint_style (HintStyle hint_style)
| Sets the hint style for font outlines for the font options object.
HintStyle | get_hint_style () const
| Gets the hint style for font outlines for the font options object.
void | set_hint_metrics (HintMetrics hint_metrics)
| Sets the metrics hinting mode for the font options object.
HintMetrics | get_hint_metrics () const
| Gets the metrics hinting mode for the font options object.
cobject * | cobj ()
const cobject * | cobj () const

## Protected Attributes
cobject * | m_cobject

## Detailed Description

The font options specify how fonts should be rendered.

Most of the time the font options implied by a surface are just right and do not need any changes, but for pixel-based targets tweaking font options may result in superior output on a particular display.

## Member Typedef Documentation

## ◆ cobject

typedef cairo_font_options_t Cairo::FontOptions::cobject

## Member Enumeration Documentation

## ◆ HintMetrics

enum class Cairo::FontOptions::HintMetrics
| strong

Specifies whether to hint font metrics; hinting font metrics means quantizing them so that they are integer values in device space.

Doing this improves the consistency of letter and line spacing, however it also means that text will be laid out differently at different zoom factors.

Enumerator
DEFAULT | Hint metrics in the default manner for the font backend and target device.
OFF | Do not hint font metrics.
ON | Hint font metrics.

## ◆ HintStyle

enum class Cairo::FontOptions::HintStyle
| strong

Specifies the type of hinting to do on font outlines.

Hinting is the process of fitting outlines to the pixel grid in order to improve the appearance of the result. Since hinting outlines involves distorting them, it also reduces the faithfulness to the original outline shapes. Not all of the outline hinting styles are supported by all font backends.

New entries may be added in future versions.

Enumerator
DEFAULT | Use the default hint style for font backend and target device.
NONE | Do not hint outlines.
SLIGHT | Hint outlines slightly to improve contrast while retaining food fidelity to the original shapes.
MEDIUM | Hint outlines with medium strength giving a compromise between fidelity to the original shapes and contrast.
FULL | Hint outlines to maximize contrast.

## Constructor & Destructor Documentation

## ◆ FontOptions() [1/3]

Cairo::FontOptions::FontOptions | ( |  | ) |

## ◆ FontOptions() [2/3]

Cairo::FontOptions::FontOptions | ( | cairo_font_options_t * | cobject,
|  | bool | take_ownership = false )
| explicit

## ◆ FontOptions() [3/3]

Cairo::FontOptions::FontOptions | ( | const FontOptions & | src | ) |

## ◆ ~FontOptions()

virtual Cairo::FontOptions::~FontOptions | ( |  | ) |
| virtual

## Member Function Documentation

## ◆ cobj() [1/2]

cobject * Cairo::FontOptions::cobj | ( |  | ) |
| inline

## ◆ cobj() [2/2]

const cobject * Cairo::FontOptions::cobj | ( |  | ) | const
| inline

## ◆ get_antialias()

Antialias Cairo::FontOptions::get_antialias | ( |  | ) | const

Gets the antialiasing mode for the font options object.

Returns
  the antialiasing mode

## ◆ get_hint_metrics()

HintMetrics Cairo::FontOptions::get_hint_metrics | ( |  | ) | const

Gets the metrics hinting mode for the font options object.

See the documentation for HintMetrics for full details.

Return value: the metrics hinting mode for the font options object.

## ◆ get_hint_style()

HintStyle Cairo::FontOptions::get_hint_style | ( |  | ) | const

Gets the hint style for font outlines for the font options object.

See the documentation for HintStyle for full details.

Returns
  the hint style for the font options object.

## ◆ get_subpixel_order()

SubpixelOrder Cairo::FontOptions::get_subpixel_order | ( |  | ) | const

Gets the subpixel order for the font options object.

See the documentation for SubpixelOrder for full details.

Returns
  the subpixel order for the font options object.

## ◆ hash()

unsigned long Cairo::FontOptions::hash | ( |  | ) | const

Compute a hash for the font options object; this value will be useful when storing an object containing a FontOptions in a hash table.

Returns
  the hash value for the font options object. The return value can be cast to a 32-bit type if a 32-bit hash value is needed.

## ◆ merge()

void Cairo::FontOptions::merge | ( | const FontOptions & | other | ) |

Merges non-default options from other into this, replacing existing values.

This operation can be thought of as somewhat similar to compositing other onto this with the operation of OPERATION_OVER.

Parameters

  other | another FontOptions

## ◆ operator=()

FontOptions & Cairo::FontOptions::operator= | ( | const FontOptions & | src | ) |

## ◆ operator==()

bool Cairo::FontOptions::operator== | ( | const FontOptions & | src | ) | const

## ◆ set_antialias()

void Cairo::FontOptions::set_antialias | ( | Antialias | antialias | ) |

Sets the antialiasing mode for the font options object.

This specifies the type of antialiasing to do when rendering text.

Parameters

  antialias | the new antialiasing mode.

## ◆ set_hint_metrics()

void Cairo::FontOptions::set_hint_metrics | ( | HintMetrics | hint_metrics | ) |

Sets the metrics hinting mode for the font options object.

This controls whether metrics are quantized to integer values in device units. See the documentation for HintMetrics for full details.

Parameters

  hint_metrics | the new metrics hinting mode.

## ◆ set_hint_style()

void Cairo::FontOptions::set_hint_style | ( | HintStyle | hint_style | ) |

Sets the hint style for font outlines for the font options object.

This controls whether to fit font outlines to the pixel grid, and if so, whether to optimize for fidelity or contrast. See the documentation for HintStyle for full details.

Parameters

  hint_style | the new hint style.

## ◆ set_subpixel_order()

void Cairo::FontOptions::set_subpixel_order | ( | SubpixelOrder | subpixel_order | ) |

Sets the subpixel order for the font options object.

The subpixel order specifies the order of color elements within each pixel on the display device when rendering with an antialiasing mode of Cairo::ANTIALIAS_SUBPIXEL. See the documentation for SubpixelOrder for full details.

Parameters

  subpixel_order | the new subpixel order.

## Member Data Documentation

## ◆ m_cobject

cobject* Cairo::FontOptions::m_cobject
| protected

The documentation for this class was generated from the following file:

- cairomm/fontoptions.h