protected override void Draw(ref UiViewDrawParameters parameters) { float opacity = parameters.Opacity; if (opacity == 0 || TextColor.Value.A == 0) { return; } base.Draw(ref parameters); if (_fontFace == null) { _fontFace = FontManager.Instance.FindFont(FontName); } float scale; UniversalFont font = _fontFace.Find(FontSize, out scale); Rectangle bounds = ScreenBounds; if (Text.Length > 0) { bounds = _textMargin.ComputeRect(bounds); } parameters.DrawBatch.DrawText(font, Text, bounds, TextAlign, TextColor.Value * opacity, (float)FontSpacing / 1000.0f, (float)LineHeight / 100.0f, scale, _rotation); }
void GetFont(out UniversalFont font, out float scale) { if (_fontFace == null) { _fontFace = FontManager.Instance.FindFont(FontName); } font = _fontFace.Find(FontSize, out scale); }
void FillEntityData(RichViewEntity richEntity, Entity entity) { FontFace fontFace = _fonts[(int)entity.Font].Font; float spacing = _fonts[(int)entity.Font].FontSpacing; int size = _sizes[(int)entity.Size] + _fonts[(int)entity.Font].FontResize; float scale; UniversalFont font = fontFace.Find(size, out scale); richEntity.Font = font; richEntity.FontScale = scale; richEntity.FontSpacing = spacing; }