Как получить высоту для NSAttributedString при фиксированной ширине

Я хочу нарисовать NSAttributedStrings в полях фиксированной ширины, но у меня возникают проблемы с вычислением правильной высоты, которую они будут поднимать при рисовании. Пока что я пробовал:

призвание- (NSSize) size, но результаты бесполезны (для этой цели), так как они дадут любую ширину, какую пожелает строка.

призвание- (void)drawWithRect:(NSRect)rect options:(NSStringDrawingOptions)options с прямоугольной формы на ширину, я хочу иNSStringDrawingUsesLineFragmentOrigin в опциях, точно так же, как я использую в моем рисунке. Результаты ... трудно понять; конечно не то, что я ищу. (Как указано в ряде мест, в том числеэтот Какао-нить).

Создание временного NSTextView и выполнение:
[[tmpView textStorage] setAttributedString:aString];<br>[tmpView setHorizontallyResizable:NO];<br>[tmpView sizeToFit];
Когда я запрашиваю фрейм tmpView, ширина остается желаемой, а высота часто правильной ... пока я не получу более длинные строки, когда это часто вдвое меньше требуемого размера. (Кажется, что максимальный размер не ударил: один кадр будет иметь высоту 273,0 (около 300 слишком коротко), а другой - 478,0 (только 60-кратный слишком короткий)).

Буду признателен за любые указания, если кто-то еще справился с этим.

Ответы на вопрос(12)

Ваш ответ на вопрос