Estoy configurando un marco UILabels basado en lo que devuelve UIFont sizeWithFont, pero por alguna razón cuando uso una fuente personalizada, los valores que se devuelven incluyen algo de relleno como se ve a continuación.¿Por qué UIFont sizeWithFont incluye espacio en blanco en su cálculo?
Cuando uso boldSystemFontOfSize el texto está alineado verticalmente en el medio (que es lo que quiero), pero cuando se utiliza fontWithName i terminan con el acolchado bajo el texto. ¿Alguna razón por la cual sizeWithFont está agregando en el relleno?
Heres mi código ...
CGRect frameLabel = label.frame;
CGSize sizeLabel = [label.text sizeWithFont:label.font];
frameLabel.size.width = sizeLabel.width;
frameLabel.size.height = sizeLabel.height;
[label setBackgroundColor:[UIColor redColor]];
** Editar **
puedo calcular el relleno superior e inferior utilizando este código y ajustar las etiquetas frame.origin .y para centrar verticalmente mi etiqueta donde debe estar
float topPadding = [label.font ascender] - [label.font capHeight];
float bottomPadding = [label.font lineHeight] - [label.font ascender];
¿es posible que el tipo de letra que estoy utilizando inclu "Gotham" des este relleno y yo tendría que editar la fuente? – AlBeebe