¿Cómo obtengo información sobre el ajuste de palabras con las nuevas API de iOS 7?

Noté que iOS 7 presenta nuevas classs relacionadas con el layout de text como NSLayoutManager, NSTextStorage y NSTextContainer. ¿Cómo puedo usarlos para get información sobre el ajuste de palabras en un NSString?

Por ejemplo, digamos que tengo un largo NSString que puse en un UILabel. Si habilito varias líneas en la UILabel, produciría una cadena como la siguiente:

The quick brown fox jumps over the lazy dog. 

Eso es genial, pero no puedo acceder a los saltos de línea en el código (por ejemplo, después de la palabra jumps , quisiera que devuelva \n o algo similar). Quisiera saber en qué tipo de índice se producen los saltos de línea. Sé que podemos hacer esto con CoreText , pero como tenemos estas nuevas classs en iOS 7, me preguntaba cómo podemos usarlas.

Ejemplo:

 CGFloat maxWidth = 150; NSAttributedString *s = [[NSAttributedString alloc] initWithString:@"The quick brown fox jumped over the lazy dog." attributes:@{NSFontAttributeName:[UIFont fontWithName:@"GillSans" size:20]}]; NSTextContainer* tc = [[NSTextContainer alloc] initWithSize:CGSizeMake(maxWidth,CGFLOAT_MAX)]; NSLayoutManager* lm = [NSLayoutManager new]; NSTextStorage* tm = [[NSTextStorage alloc] initWithAttributedString:s]; [tm addLayoutManager:lm]; [lm addTextContainer:tc]; [lm enumerateLineFragmentsForGlyphRange:NSMakeRange(0,lm.numberOfGlyphs) usingBlock:^(CGRect rect, CGRect usedRect, NSTextContainer *textContainer, NSRange glyphRange, BOOL *stop) { NSRange r = [lm characterRangeForGlyphRange:glyphRange actualGlyphRange:nil]; NSLog(@"%@", [s.string substringWithRange:r]); }];