icu::ParagraphLayout::VisualRun Class Reference

This object represents a single visual run in a line of text in a paragraph. More...

`#include <ParagraphLayout.h>`

Inheritance diagram for icu::ParagraphLayout::VisualRun:

## Public Member Functions

const LEFontInstance * | getFont () const
| Get the `LEFontInstance` object which represents the font of the visual run. More...
UBiDiDirection | getDirection () const
| Get the direction of the visual run. More...
le_int32 | getGlyphCount () const
| Get the number of glyphs in the visual run. More...
const LEGlyphID * | getGlyphs () const
| Get the glyphs in the visual run. More...
const float * | getPositions () const
| Get the (x, y) positions of the glyphs in the visual run. More...
const le_int32 * | getGlyphToCharMap () const
| Get the glyph-to-character map for this visual run. More...
le_int32 | getAscent () const
| A convenience method which returns the ascent value for the font associated with this run. More...
le_int32 | getDescent () const
| A convenience method which returns the descent value for the font associated with this run. More...
le_int32 | getLeading () const
| A convenience method which returns the leading value for the font associated with this run. More...
virtual UClassID | getDynamicClassID () const
| ICU "poor man's RTTI", returns a UClassID for the actual class. More...
Public Member Functions inherited from icu::UObject
virtual | ~UObject ()
| Destructor. More...

## Static Public Member Functions

static UClassID | getStaticClassID ()
| ICU "poor man's RTTI", returns a UClassID for this class. More...

## Friends

class | Line

## Detailed Description

This object represents a single visual run in a line of text in a paragraph.

A visual run is text which is in the same font, script, and direction. The text is represented by an array of `LEGlyphIDs`, an array of (x, y) glyph positions and a table which maps indices into the glyph array to indices into the original character array which was used to create the paragraph.

These objects are only created by `ParagraphLayout::Line` objects, so their constructors and destructors are private.

See also
  ParagraphLayout::Line

Stable:
  ICU 3.2

Definition at line 205 of file ParagraphLayout.h.

## Member Function Documentation

## getAscent()

le_int32 icu::ParagraphLayout::VisualRun::getAscent | ( |  | ) | const

inline

A convenience method which returns the ascent value for the font associated with this run.

Returns
  the ascent value of this run's font.

Stable:
  ICU 3.2

Definition at line 710 of file ParagraphLayout.h.

## getDescent()

le_int32 icu::ParagraphLayout::VisualRun::getDescent | ( |  | ) | const

inline

A convenience method which returns the descent value for the font associated with this run.

Returns
  the descent value of this run's font.

Stable:
  ICU 3.2

Definition at line 715 of file ParagraphLayout.h.

## getDirection()

UBiDiDirection icu::ParagraphLayout::VisualRun::getDirection | ( |  | ) | const

inline

Get the direction of the visual run.

Returns
  the direction of the run. This will be UBIDI_LTR if the run is left-to-right and UBIDI_RTL if the line is right-to-left.

Stable:
  ICU 3.2

Definition at line 685 of file ParagraphLayout.h.

## getDynamicClassID()

virtual UClassID icu::ParagraphLayout::VisualRun::getDynamicClassID | ( | void |  | ) | const

inline virtual

ICU "poor man's RTTI", returns a UClassID for the actual class.

Stable:
  ICU 3.2

Reimplemented from icu::UObject.

Definition at line 322 of file ParagraphLayout.h.

## getFont()

const LEFontInstance * icu::ParagraphLayout::VisualRun::getFont | ( |  | ) | const

inline

Get the `LEFontInstance` object which represents the font of the visual run.

This will always be a non-composite font.

Returns
  the `LEFontInstance` object which represents the font of the visual run.

See also
  LEFontInstance

Stable:
  ICU 3.2

Definition at line 680 of file ParagraphLayout.h.

## getGlyphCount()

le_int32 icu::ParagraphLayout::VisualRun::getGlyphCount | ( |  | ) | const

inline

Get the number of glyphs in the visual run.

Returns
  the number of glyphs.

Stable:
  ICU 3.2

Definition at line 690 of file ParagraphLayout.h.

## getGlyphs()

const LEGlyphID * icu::ParagraphLayout::VisualRun::getGlyphs | ( |  | ) | const

inline

Get the glyphs in the visual run.

Glyphs with the values `0xFFFE` and `0xFFFF` should be ignored.

Returns
  the address of the array of glyphs for this visual run. The storage is owned by the `VisualRun` object and must not be deleted. It will remain valid as long as the `VisualRun` object is valid.

Stable:
  ICU 3.2

Definition at line 695 of file ParagraphLayout.h.

## getGlyphToCharMap()

const le_int32 * icu::ParagraphLayout::VisualRun::getGlyphToCharMap | ( |  | ) | const

inline

Get the glyph-to-character map for this visual run.

This maps the indices into the glyph array to indices into the character array used to create the paragraph.

Returns
  the address of the character-to-glyph map for this visual run. The storage is owned by the `VisualRun` object and must not be deleted. It will remain valid as long as the `VisualRun` object is valid.

Stable:
  ICU 3.2

Definition at line 705 of file ParagraphLayout.h.

## getLeading()

le_int32 icu::ParagraphLayout::VisualRun::getLeading | ( |  | ) | const

inline

A convenience method which returns the leading value for the font associated with this run.

Returns
  the leading value of this run's font.

Stable:
  ICU 3.2

Definition at line 720 of file ParagraphLayout.h.

## getPositions()

const float * icu::ParagraphLayout::VisualRun::getPositions | ( |  | ) | const

inline

Get the (x, y) positions of the glyphs in the visual run.

To simplify storage management, the x and y positions are stored in a single array with the x positions at even offsets in the array and the corresponding y position in the following odd offset. There is an extra (x, y) pair at the end of the array which represents the advance of the final glyph in the run.

Returns
  the address of the array of glyph positions for this visual run. The storage is owned by the `VisualRun` object and must not be deleted. It will remain valid as long as the `VisualRun` object is valid.

Stable:
  ICU 3.2

Definition at line 700 of file ParagraphLayout.h.

## getStaticClassID()

static UClassID icu::ParagraphLayout::VisualRun::getStaticClassID | ( | void |  | ) |

inline static

ICU "poor man's RTTI", returns a UClassID for this class.

Stable:
  ICU 3.2

Definition at line 315 of file ParagraphLayout.h.

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

- layoutex/layout/ParagraphLayout.h