protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
if (this._stateIndex.IsBetween(0, this.Characters.Length - 1))
{
string chr = this.Characters[this._stateIndex];
SizeF size = e.Graphics.MeasureString(chr, _font);
float x = (12 - size.Width) / 2 + Padding.Left;
float y = (Height - size.Height) / 2 + Padding.Top;
var pntF = new PointF(x, y);
using (var brush = new SolidBrush(this.CurrentColor))
e.Graphics.DrawString(chr, _font, brush, pntF);
}
}