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 ParagraphLayout::VisualRun:
UObject UMemory

Public Member Functions

const LEFontInstancegetFont () const
 Get the LEFontInstance object which represents the font of the visual run.
UBiDiDirection getDirection () const
 Get the direction of the visual run.
le_int32 getGlyphCount () const
 Get the number of glyphs in the visual run.
const LEGlyphIDgetGlyphs () const
 Get the glyphs in the visual run.
const float * getPositions () const
 Get the (x, y) positions of the glyphs in the visual run.
const le_int32getGlyphToCharMap () const
 Get the glyph-to-character map for this visual run.
le_int32 getAscent () const
 A convenience method which returns the ascent value for the font associated with this run.
le_int32 getDescent () const
 A convenience method which returns the descent value for the font associated with this run.
le_int32 getLeading () const
 A convenience method which returns the leading value for the font associated with this run.
virtual UClassID getDynamicClassID () const
 ICU "poor man's RTTI", returns a UClassID for the actual class.

Static Public Member Functions

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

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 198 of file ParagraphLayout.h.


Member Function Documentation

le_int32 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 700 of file ParagraphLayout.h.

References LEFontInstance::getAscent().

le_int32 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 705 of file ParagraphLayout.h.

References LEFontInstance::getDescent().

UBiDiDirection 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 675 of file ParagraphLayout.h.

virtual UClassID ParagraphLayout::VisualRun::getDynamicClassID ( void   )  const [inline, virtual]

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

Stable:
ICU 3.2

Implements UObject.

Definition at line 315 of file ParagraphLayout.h.

const LEFontInstance * 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 670 of file ParagraphLayout.h.

le_int32 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 680 of file ParagraphLayout.h.

const LEGlyphID * 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 685 of file ParagraphLayout.h.

const le_int32 * 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 695 of file ParagraphLayout.h.

le_int32 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 710 of file ParagraphLayout.h.

References LEFontInstance::getLeading().

const float * 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 690 of file ParagraphLayout.h.

static UClassID ParagraphLayout::VisualRun::getStaticClassID ( void   )  [inline, static]

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

Stable:
ICU 3.2

Definition at line 308 of file ParagraphLayout.h.


The documentation for this class was generated from the following file:
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on Sat Jan 23 15:17:43 2010 for ICU 4.3.4 by  doxygen 1.6.1