5 #ifndef __LAYOUTENGINE_H
6 #define __LAYOUTENGINE_H
66 #ifndef U_HIDE_INTERNAL_API
123 #ifndef U_HIDE_INTERNAL_API
261 virtual const void *getFontTable(
LETag tableTag,
size_t &length)
const;
295 #ifndef U_HIDE_INTERNAL_API
443 void getGlyphPositions(
float positions[],
LEErrorCode &success)
const;
459 void getGlyphPosition(
le_int32 glyphIndex,
float &x,
float &y,
LEErrorCode &success)
const;
468 virtual void reset();
uint32_t le_uint32
A type used for unsigned, 32-bit integers.
le_uint32 LETag
Used for four character tags.
#define U_LAYOUT_API
Set to export library symbols from inside the layout engine library, and to import them from outside...
virtual UClassID getDynamicClassID() const =0
ICU4C "poor man's RTTI", returns a UClassID for the actual ICU class.
void * UClassID
UClassID is used to identify classes without using the compiler's RTTI.
const LEFontInstance * fFontInstance
The font instance for the text font.
C API: Basic definitions for the ICU LayoutEngine.
int32_t le_int32
A type used for signed, 32-bit integers.
UBool le_bool
A type used for boolean values.
#define U_NAMESPACE_BEGIN
This is used to begin a declaration of a public ICU C++ API.
static const le_int32 kTypoFlagLiga
le_int32 fScriptCode
The script code for the text.
virtual const void * getFontTable(LETag tableTag) const
This is a virtual base class used to do complex text layout.
LEErrorCode
Error codes returned by the LayoutEngine.
le_bool fFilterZeroWidth
TRUE if mapCharsToGlyphs should replace ZWJ / ZWNJ with a glyph with no contours. ...
#define U_NAMESPACE_END
This is used to end a declaration of a public ICU C++ API.
LEGlyphStorage * fGlyphStorage
The object which holds the glyph storage.
le_int32 fLanguageCode
The langauge code for the text.
UChar LEUnicode
Used to represent 16-bit Unicode code points.
This is a virtual base class that serves as the interface between a LayoutEngine and the platform fon...
This class encapsulates the per-glyph storage used by the ICU LayoutEngine.
le_uint32 LEGlyphID
Used for glyph indices.
static const le_int32 kTypoFlagKern
le_int32 fTypoFlags
The typographic control flags.
UObject is the common ICU "boilerplate" class.