UILabel sizeWithFont: problema. texto en cursiva recorte
-
28-09-2019 - |
Pregunta
He creado un UILabel que muestra un solo carácter general. Incluso con clipsToBounds = NO; Todavía recibo de recorte.
Ver enlace: http://img341.imageshack.us/img341/5310/ screenshot20100814at243.png
utiliza el siguiente código:
CGSize fBounds = [myLabel.text sizeWithFont:cFont];
Para conseguir lo que debería ser el rectángulo de delimitación de la fuente. Y la etiqueta se dibuja con:
myLabel = [[UILabel alloc] initWithFrame:CGRectMake(20, 20, 280, 300)];
myLabel.clipsToBounds = NO;
myLabel.numberOfLines = 1;
myLabel.textAlignment = UITextAlignmentCenter;
myLabel.adjustsFontSizeToFitWidth = YES;
myLabel.minimumFontSize = 10;
myLabel.text = @"A";
myLabel.font = [UIFont fontWithName:@"CourierNewPSMT" size:300];
myLabel.textColor = [UIColor blackColor];
myLabel.backgroundColor = [UIColor colorWithRed:1 green:.5 blue:0 alpha:.5];
En la siguiente imagen, el tamaño de regresar de sizeWithFont se representa por la superposición rectángulo azul semi-transparente. Como se puede ver, con un tipo de letra cursiva (en este caso Verdana-BoldItalic), el personaje se extiende más allá de lo vuelve sizeWithFont. Además, el marco de UILabel (el color naranja) también clips del personaje. Pensamientos? Tal vez podría invalidar alguna rutina de dibujo de texto. Además, no estoy seguro si este es el mismo problema que aquí:
Solución 2
Parece que este es un problema de manzana. Terminamos haciendo dibujo personalizado con CoreText.
Otros consejos
El uso de texto atribuido + guión ...