RShapeInfo Class Reference

class RShapeInfo

Holds shaping information for text that requires it (for example Indic text).

Nested Classes and Structures

Public Member Functions
RShapeInfo()
TPoint16 Advance()
IMPORT_C voidClose()
TInt EndOfShapedText()
TAny *GetContext()
TInt GlyphCount()
const TPoint16 *GlyphPositions()
const TInt32 *Glyphs()
const TInt16 *Indices()
IMPORT_C TBoolIsOpen()
TInt Open(const CFont *, const TDesC16 &, TInt, TInt, TInt, TInt)
voidSetContext(TAny *)
Private Attributes
TAny *iContextualProcessFunc
TInt iEndOfShapedText
const CFont *iFont
const TShapeHeader *iHeader

Constructor & Destructor Documentation

RShapeInfo()

IMPORT_CRShapeInfo()

Construct an RShapeInfo.

Member Functions Documentation

Advance()

TPoint16 Advance()const

Returns the pen advance these glyphs require.

Close()

IMPORT_C voidClose()

Frees the memory associated with this shaping information.

EndOfShapedText()

TInt EndOfShapedText()

GetContext()

TAny *GetContext()

GlyphCount()

TInt GlyphCount()const

Returns the number of glyphs in the shaped output.

GlyphPositions()

const TPoint16 *GlyphPositions()const

Returns the array of positions for the glyphs returned by Glyphs, and the total advance for the text.

Glyphs()

const TInt32 *Glyphs()const

Returns the array of glyphs. These must be ORed with 0x80000000 to make glyph numbers that functions like CFbsFont::Rasterize can accept to avoid confusing glyph numbers with Unicode character numbers. GlyphCount

Indices()

const TInt16 *Indices()const

Returns the array of indices.

IsOpen()

IMPORT_C TBoolIsOpen()

Checks if this shaping information is still occupying memory.

Open(const CFont *, const TDesC16 &, TInt, TInt, TInt, TInt)

TInt Open(const CFont *aFont,
const TDesC16 &aText,
TIntaStartOfTextToShape,
TIntaEndOfTextToShape,
TIntaScriptCode,
TIntaLanguageCode
)

Perform shaping on the text in aText between aStartOfTextToShape and aEndOfTextToShape, based on the script conventions implied by aScriptCode.

Parameters

const CFont * aFontThe font to use for the shaping.
const TDesC16 & aTextThe text, including context.
TInt aStartOfTextToShapeThe start position within aText of the text to be shaped.
TInt aEndOfTextToShapeThe end position within aText of the text to be shaped.
TInt aScriptCodeThe script code for the script being shaped.
TInt aLanguageCodeThe language code for the language being shaped.

SetContext(TAny *)

voidSetContext(TAny *aContextualProcessFunc)

Parameters

TAny * aContextualProcessFunc

Member Data Documentation

TAny * iContextualProcessFunc

TAny *iContextualProcessFunc[private]

TInt iEndOfShapedText

TInt iEndOfShapedText[private]

const CFont * iFont

const CFont *iFont[private]

const TShapeHeader * iHeader

const TShapeHeader *iHeader[private]