UITextView textContainerInset que no respeta el valor de inserción inferior

Tengo una UIView que muestra una NSAttributedString. Está configurado para cambiar el tamaño para adaptarse a su contenido.

Me gustaría crear algo de relleno entre el texto y la vista, sin embargo, no está funcionando bien. Si hago esto ...

view.textContainerInset = UIEdgeInsetsMake(0, 15, 0, 15);

... luego los bordes izquierdo y derecho están acolchados, y la parte superior e inferior no tienen espacio. Esto es correcto. Luego agrego en un recuadro superior:

view.textContainerInset = UIEdgeInsetsMake(15, 15, 0, 15);

Ahora la parte superior tiene 15 puntos de relleno, pero de repente la parte inferior se rellena un poco también (alrededor de 10 puntos).

Si luego agrego 15 puntos de relleno inferior, la parte inferior se vuelve demasiado grande y el espacio no es el mismo en todos los sentidos. En su lugar, tengo que falsificarlo:

view.textContainerInset = UIEdgeInsetsMake(15, 15, 5, 15);

¿Es este un error de iOS 7 o estoy malinterpretando algo? Me detesta arruinar el valor inferior sin entender lo que está pasando.

Respuestas a la pregunta(2)

Su respuesta a la pregunta