2012-04-21 2 views
0

Я пытаюсь нарисовать текст в MonoMac, но безуспешно. В представленном образце окружность рисуется, но текст не отображается.Рисование текста в MonoMac

var context = NSGraphicsContext.CurrentContext.GraphicsPort; 
context.SetStrokeColor (new CGColor(1.0f, 0f, 0f)); // red 
context.SetLineWidth (1.0F); 
context.StrokeEllipseInRect (new RectangleF(5, 5, 10, 10)); 
context.SetTextDrawingMode(CGTextDrawingMode.Stroke); 
context.TextPosition = new PointF(0f, 0f); 
context.ShowText("My text"); // is not shown 

Благодаря

ответ

0

Вам просто нужно указать шрифт, который Вы хотели бы использовать.

public override void DrawRect (RectangleF dirtyRect) 
{ 
    var context = NSGraphicsContext.CurrentContext.GraphicsPort; 

    context.SetStrokeColor (new CGColor(1.0f, 0f, 0f)); // red 
    context.SetLineWidth (1.0F); 
    context.StrokeEllipseInRect (new RectangleF(5, 5, 10, 10)); 
    context.SetTextDrawingMode(CGTextDrawingMode.Stroke); 
    context.TextPosition = new PointF(0f, 0f); 
    context.SelectFont ("Arial", 5, CGTextEncoding.MacRoman); 
    context.ShowText("My text"); 
} 
0

Вам просто нужно переписать drawRect.

public override void DrawRect (RectangleF dirtyRect) 
    { 
     NSString s = new NSString ("test"); 
     s.DrawString (new PointF(25,100), new NSDictionary()); 
    } 

, если вы хотите, чтобы настроить его, вот good reference.