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

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

References U_NAMESPACE_END.

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

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

References LEFontInstance::getLeading(), and le_int32.

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

References LEFontInstance::getDescent(), and le_int32.

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

References NULL, and UBIDI_LTR.

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 709 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 719 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 734 of file ParagraphLayout.h.

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

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

References le_int32, and LEGlyphID.


The documentation for this class was generated from the following file:
Generated on Mon Jul 14 00:36:10 2008 for ICU 3.6 by doxygen 1.3.5