float yBearing; ///< The distance from the baseline to the topmost border of the glyph
float advance; ///< The distance to move the cursor for this glyph
float scaleFactor; ///< The scaling applied (fixed-size fonts only)
- bool softwareItalic; ///< Whether glyph needs software support to draw italic style
- bool softwareBold; ///< Whether glyph needs software support to draw bold style
+ bool isItalicRequired; ///< Whether the italic style is required.
+ bool isBoldRequired; ///< Whether the bold style is required.
};
bool IsEqualGlyph ( const GlyphInfoData& glyphData, const GlyphInfo& glyph )
{
return false;
}
- if( glyphData.softwareItalic != glyph.softwareItalic )
+ if( glyphData.isItalicRequired != glyph.isItalicRequired )
{
return false;
}
- if( glyphData.softwareBold != glyph.softwareBold )
+ if( glyphData.isBoldRequired != glyph.isBoldRequired )
{
return false;
}
bool ShapeInfoTest( const ShapeInfoData& data )
{
// 1) Create the model.
- LogicalModelPtr logicalModel;
- VisualModelPtr visualModel;
+ ModelPtr textModel;
MetricsPtr metrics;
Size textArea(100.f, 60.f);
Size layoutSize;
data.fontDescriptions,
options,
layoutSize,
- logicalModel,
- visualModel,
+ textModel,
metrics,
false );
+ LogicalModelPtr logicalModel = textModel->mLogicalModel;
+ VisualModelPtr visualModel = textModel->mVisualModel;
+
// 2) Clear the model.
Vector<GlyphInfo>& glyphs = visualModel->mGlyphs;
struct GlyphInfoData glyphs01[] =
{
- { 2u, 4857u, 0.f, 0.f, 0.f, 0.f, 15.f, 0.f, true, false },
- { 2u, 7316u, 0.f, 0.f, 0.f, 0.f, 15.f, 0.f, true, false },
- { 2u, 4364u, 0.f, 0.f, 0.f, 0.f, 15.f, 0.f, true, false },
+ { 2u, 21154u, 0.f, 0.f, 0.f, 0.f, 16.f, 0.f, true, true },
+ { 2u, 12298u, 0.f, 0.f, 0.f, 0.f, 16.f, 0.f, true, true },
+ { 2u, 17828u, 0.f, 0.f, 0.f, 0.f, 16.f, 0.f, true, true },
};
struct GlyphInfoData glyphs02[] =
{
- { 2u, 4857u, 0.f, 0.f, 0.f, 0.f, 15.f, 0.f, false, false },
- { 2u, 7316u, 0.f, 0.f, 0.f, 0.f, 15.f, 0.f, false, false },
- { 2u, 4364u, 0.f, 0.f, 0.f, 0.f, 15.f, 0.f, true, false },
+ { 2u, 21154u, 0.f, 0.f, 0.f, 0.f, 16.f, 0.f, false, false },
+ { 2u, 12298u, 0.f, 0.f, 0.f, 0.f, 16.f, 0.f, false, true },
+ { 2u, 17828u, 0.f, 0.f, 0.f, 0.f, 16.f, 0.f, true, false },
};
CharacterIndex characterIndices[] = { 0u, 1u, 2u };