Jak sprawić, by NSStringDrawingContext zmniejszył tekst?

Próbuję użyć przypisanego interfejsu API ciągów systemu iOS 6, aby obliczyć rozmiar tekstu i zmniejszyć rozmiar czcionki, jeśli to konieczne. Jednak nie mogę go uruchomić, jak mówi dokumentacja.

NSString *string = @"This is a long text that doesn't shrink as it should";

NSStringDrawingContext *context = [NSStringDrawingContext new];
context.minimumScaleFactor = 0.5;

UIFont *font = [UIFont fontWithName:@"SourceSansPro-Bold" size:32.f];

NSMutableParagraphStyle *paragraphStyle = [NSMutableParagraphStyle new];
paragraphStyle.lineBreakMode = NSLineBreakByClipping;

NSDictionary *attributes = @{ NSFontAttributeName: font,
                              NSParagraphStyleAttributeName: paragraphStyle };

NSAttributedString *attributedString = [[NSAttributedString alloc] initWithString:self.title attributes:attributes];

CGRect rect = [attributedString boundingRectWithSize:CGSizeMake(512.f, 512.f) options:NSStringDrawingUsesLineFragmentOrigin context:context];

NSLog(@"rect: %@, context: %@", NSStringFromCGRect(rect), context.debugDescription);

Ale tekst nie kurczy się i jest skrócony.actualScaleFactor jest zawsze1. Wyniki dziennika to:

rect:{{0, 0}, {431.64801, 80.447998}}, context:<NSStringDrawingContext: 0x14e85770> minimumScaleFactor:0.500000 minimumTrackingAdjustment:0.000000 actualScaleFactor:1.000000 actualTrackingAdjustment:0.000000 totalBounds:{{0, 0}, {431.64801, 80.447998}}

Wynik jest taki sam, jeśli użyję rzeczywistej metody rysowania, a nie metody pomiaru. Jeśli usunę styl akapitowy, spowoduje to zawinięcie tekstu i nie zmniejszy go. Jeśli usuwam styl akapitowy I wybieram rozmiar, który zezwala tylko na jeden wiersz tekstu, tekst jest również obcięty zamiast skurczenia. Co jest nie tak? Jest bardzo mało dokumentacji lub zasobów internetowych, które zajmują sięNSStringDrawingContext. I staram się unikać używaniasizeWithFont:minFontSize:actualFontSize:forWidth:lineBreakMode: który jest przestarzały w iOS 7.

questionAnswers(3)

yourAnswerToTheQuestion