Flutter Engine
The Flutter Engine
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 FontGetFont () 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]fontThe 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}
bool IsValid() const
Definition: font.cc:23
font
Font Metadata and Metrics.

◆ 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}
uint16_t glyphs[5]
Definition: FontMgrTest.cpp:46

◆ ~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]glyphThe glyph
[in]positionThe 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}

◆ 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}

◆ 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: