2009-03-03 17 views
10

Zrozumiałem, jak używać klasy NSBezierPath do rysowania kształtów w funkcji drawRect z mojej niestandardowej klasy widoku, jednak nie potrafię wymyślić sposobu rysowania tekstu. Poniższy kod jest co mam tak daleko do rysowania tekst (znajdujący się w funkcji drawRect):Jak narysować tekst w niestandardowym widoku przy użyciu Objective-C?

NSText *text = [NSText new]; 
[text setTextColor: [NSColor yellowColor]]; 
[text setText: @"Hello!"]; 

Zgaduję, że może muszę dostarczyć NSRect lub NSPoint powiedzieć obiekt NSText gdzie zwrócić sam w sobie, ale nie mogę znaleźć niczego w dokumentacji Cocoa na temat tego, jak to zrobić.

Odpowiedz

22

można spróbować czegoś wzdłuż tych linii:

//note we are using the convenience method, so we don't need to autorelease the object 
NSDictionary *attributes = [NSDictionary dictionaryWithObjectsAndKeys:[NSFont fontWithName:@"Helvetica" size:26], NSFontAttributeName,[NSColor blackColor], NSForegroundColorAttributeName, nil]; 

NSAttributedString * currentText=[[NSAttributedString alloc] initWithString:@"Cat" attributes: attributes]; 

NSSize attrSize = [currentText size]; 
[currentText drawAtPoint:NSMakePoint(yourX, yourY)]; 
+0

Idealnie! Dziękuję bardzo za Twoją pomoc. –

Powiązane problemy