MGD::FONT Class Reference
Font definition and implementation.
More...
#include <mi32/mgd2.h>
List of all members.
Public Types |
| enum | FONTTYPE { FONTTYPE_OF,
FONTTYPE_TTF
} |
| enum | MODE { MODE_MIUNICODE,
MODE_RAWGID,
MODE_GID
} |
Public Member Functions |
| | FONT () |
| virtual | ~FONT () |
| virtual int | DrawGlyph (MGD::CONTEXT *context, double dx, double dy, double baseangle, const STRINGDATA &string, int n)=0 |
| virtual int | DrawGlyph (MGD::CONTEXT *context, double dx, double dy, double baseangle, const MIUNICODE *ucstr, MGD::FONT::MODE mode)=0 |
| virtual int | GetFontMetrics (MGD::CONTEXT *context, MGD::FONTINFO &fontinfo)=0 |
| const MIUNICODE * | GetFontName () const |
| virtual MGD::FONT::FONTTYPE | GetFontType () const =0 |
| virtual int | GetGlyphExtents (MGD::CONTEXT *context, const double &dx, const double &dy, const double &baseangle, MIUNICODE ch, DRECT2D &extents, MGD::FONT::MODE mode)=0 |
| virtual int | GetGlyphMetrics (MGD::CONTEXT *context, MIUNICODE ch, MGD::GLYPHINFO &glyphinfo, MGD::FONT::MODE mode)=0 |
| virtual ERRVALUE | GetGlyphOutline (UINT16 GlyphIndex, REGION2D ®ion, UINT32 FontFlags) |
| MIUNICODE | GetInitChar () const |
| MIUNICODE | GetLastChar () const |
| MIUNICODE | GetNULLChar () const |
| MIUNICODE | GetNumGlyphs () const |
| virtual bool | IsEmbeddable () const =0 |
| virtual double | NextPosition (MGD::CONTEXT *context, double *retx, double *rety, double baseangle, const STRINGDATA &string, int n, double SpaceExtra=0.0, double GlyphExtra=0.0)=0 |
| virtual int | UCtoGID (MGD::CONTEXT *context, const MIUNICODE *uc, MGD::STRINGDATA &strdata)=0 |
Static Public Member Functions |
| static ERRVALUE | ReadTTF (const MIUNICODE *name, SIMPLE_ARRAY< UINT8 > &data) |
Protected Attributes |
| FILEPATH | m_filename |
| MISTRING | m_fontname |
| MIUNICODE | m_InitChar |
| MIUNICODE | m_LastChar |
| MIUNICODE | m_NullChar |
| UINT16 | m_NumGlyphs |
Detailed Description
Font definition and implementation.
Member Enumeration Documentation
- Enumerator:
| MODE_MIUNICODE |
Using Unicode.
|
| MODE_RAWGID |
Glyph IDs instead of Unicode.
|
| MODE_GID |
Glyph IDs encoded by UCtoGID member function.
|
Constructor & Destructor Documentation
| virtual MGD::FONT::~FONT |
( |
|
) |
[virtual] |
Member Function Documentation
| virtual int MGD::FONT::DrawGlyph |
( |
MGD::CONTEXT * |
context, |
|
|
double |
dx, |
|
|
double |
dy, |
|
|
double |
baseangle, |
|
|
const STRINGDATA & |
string, |
|
|
int |
n | |
|
) |
| | [pure virtual] |
| const MIUNICODE* MGD::FONT::GetFontName |
( |
|
) |
const [inline] |
Get the outline of a glyph.
This only works for TrueType fonts, but the caller won't have access to the TrueType-derived MGD::FONT_TTF. So we make it virtual and let it return an error by default. We could easily implement it for OF fonts too if it was ever needed.
| MIUNICODE MGD::FONT::GetInitChar |
( |
|
) |
const [inline] |
| MIUNICODE MGD::FONT::GetLastChar |
( |
|
) |
const [inline] |
| MIUNICODE MGD::FONT::GetNULLChar |
( |
|
) |
const [inline] |
| MIUNICODE MGD::FONT::GetNumGlyphs |
( |
|
) |
const [inline] |
| virtual bool MGD::FONT::IsEmbeddable |
( |
|
) |
const [pure virtual] |
| virtual double MGD::FONT::NextPosition |
( |
MGD::CONTEXT * |
context, |
|
|
double * |
retx, |
|
|
double * |
rety, |
|
|
double |
baseangle, |
|
|
const STRINGDATA & |
string, |
|
|
int |
n, |
|
|
double |
SpaceExtra = 0.0, |
|
|
double |
GlyphExtra = 0.0 | |
|
) |
| | [pure virtual] |
- Parameters:
-
| SpaceExtra | Extra pixels per space to insert |
Read a TrueType font into memory.
The "name" parameter is expected to be the filename, minus the path or extention.
The FaceNum parameter is for TrueType Collections (ttc). A ttc file contains multiple ttfs Since TrueType fonts are embeded in resource files on the Macintosh (even in OS X), a simple "filename" isn't all that useful. This function handles reading the whole thing.
Member Data Documentation
Initial character having glyph defined.
Last character having glyph defined.
Character to user for undefined glyphs.
Number of glyphs in font.
The documentation for this class was generated from the following file: