Ich versuche, Text auf NSView Unterklasse zu zeichnen. Ich verwende ein NSTextStorage, ein NSLayoutManager und ein NSTextContainer. Ich folgte Apples doc und hier ist die Methode, die ich verwende, um die notwendige Höhe für jeden Text zu berechnen:Zeichnen Sie Text mit einem Rect mit gegebener Breite
NSSize newSize= NSMakeSize(width, 0.0);
NSLayoutManager* layoutManager= [[textStorage layoutManagers] objectAtIndex:0];
NSTextContainer* textContainer= [[layoutManager textContainers] objectAtIndex:0];
[textContainer setContainerSize:newSize];
[textStorage addAttribute:NSFontAttributeName value:font range:NSMakeRange(0, [textStorage length])];
[textContainer setLineFragmentPadding:0.0];
[layoutManager glyphRangeForTextContainer:textContainer];
return [layoutManager usedRectForTextContainer:textContainer].size.height;
Das einzige Problem ist, dass ich weiß nicht, wie in einem NSRect mit dem Layout-Manager zu ziehen.
Können Sie mir bitte helfen? Vielen Dank im Voraus!
Sie sollten Ihre Frage markieren, wie beantwortet, auch wenn Sie es für sich selbst beantwortet. –