| Flutter Impeller |

Classes | Public Member Functions | List of all members
impeller::TextRun Class Reference

Represents a collection of positioned glyphs from a specific font. More...

`#include <text_run.h>`

## Classes
struct | GlyphPosition

## Public Member Functions
| TextRun (const Font &font)
| Create an empty text run with the specified font. More...
| TextRun (const Font &font, std::vector< GlyphPosition > &glyphs)
| ~TextRun ()
bool | IsValid () const
bool | AddGlyph (Glyph glyph, Point position)
| Add a glyph at the specified position to the run. More...
size_t | GetGlyphCount () const
| Get the number of glyphs in the run. More...
const std::vector< GlyphPosition > & | GetGlyphPositions () const
| Get a reference to all the glyph positions within the run. More...
const Font & | GetFont () const
| Get the font for this run. More...

## Detailed Description

Represents a collection of positioned glyphs from a specific font.

Definition at line 20 of file text_run.h.

## Constructor & Destructor Documentation

## ◆ TextRun() [1/2]

impeller::TextRun::TextRun | ( | const Font & | font | ) |
| explicit

Create an empty text run with the specified font.

Parameters

  [in] | font | The font

Definition at line 9 of file text_run.cc.

9 : font_(font) {
10 if (!font_.IsValid()) {
11 return;
12 }
13 is_valid_ = true;
14 }

References impeller::Font::IsValid().

## ◆ TextRun() [2/2]

impeller::TextRun::TextRun | ( | const Font & | font,
|  | std::vector< GlyphPosition > & | glyphs
| ) |  |

Definition at line 16 of file text_run.cc.

17 : font_(font), glyphs_(std::move(glyphs)) {
18 if (!font_.IsValid()) {
19 return;
20 }
21 is_valid_ = true;
22 }

References impeller::Font::IsValid().

## ◆ ~TextRun()

impeller::TextRun::~TextRun | ( |  | ) |
| default

## Member Function Documentation

## ◆ AddGlyph()

bool impeller::TextRun::AddGlyph | ( | Glyph | glyph,
|  | Point | position
| ) |  |

Add a glyph at the specified position to the run.

Parameters

  [in] | glyph | The glyph
  [in] | position | The position

Returns
  If the glyph could be added to the run.

Definition at line 26 of file text_run.cc.

26 {
27 glyphs_.emplace_back(GlyphPosition{glyph, position});
28 return true;
29 }

Referenced by impeller::MakeTextFrameSTB().

## ◆ GetFont()

const Font & impeller::TextRun::GetFont | ( |  | ) | const

Get the font for this run.

Returns
  The font.

Definition at line 43 of file text_run.cc.

43 {
44 return font_;
45 }

## ◆ GetGlyphCount()

size_t impeller::TextRun::GetGlyphCount | ( |  | ) | const

Get the number of glyphs in the run.

Returns
  The glyph count.

Definition at line 39 of file text_run.cc.

39 {
40 return glyphs_.size();
41 }

## ◆ GetGlyphPositions()

const std::vector< TextRun::GlyphPosition > & impeller::TextRun::GetGlyphPositions | ( |  | ) | const

Get a reference to all the glyph positions within the run.

Returns
  The glyph positions.

Definition at line 35 of file text_run.cc.

35 {
36 return glyphs_;
37 }

Referenced by impeller::MakeTextFrameSTB().

## ◆ IsValid()

bool impeller::TextRun::IsValid | ( |  | ) | const

Definition at line 31 of file text_run.cc.

31 {
32 return is_valid_;
33 }

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

- impeller/typographer/text_run.h
- impeller/typographer/text_run.cc

impeller::Font::IsValid
bool IsValid() const
Definition: font.cc:23