Quiero dibujar texto en una vista, rotar 90 °. Soy bastante nuevo en el desarrollo de iPhone, y hurgando en la web revela una serie de soluciones diferentes. Intenté algunas y generalmente termino recortando el texto.iPhone: ¿Dibujar texto girado?
¿Qué está pasando aquí? I am dibujo en un espacio bastante pequeño (una celda de vista de tabla), pero tiene que haber una forma "correcta" de hacer esto ... ¿verdad?
Editar: Aquí hay un par de ejemplos. Estoy tratando de mostrar el texto "" a lo largo de la barra negra a la izquierda.
primer intento, desde RJShearman on the Apple Discussions
CGContextRef context = UIGraphicsGetCurrentContext(); CGContextSelectFont (context, "Helvetica-Bold", 16.0, kCGEncodingMacRoman); CGContextSetTextDrawingMode (context, kCGTextFill); CGContextSetRGBFillColor(context, 1.0, 0.0, 0.0, 1.0); CGContextSetTextMatrix (context, CGAffineTransformRotate(CGAffineTransformScale(CGAffineTransformIdentity, 1.f, -1.f), M_PI/2)); CGContextShowTextAtPoint (context, 21.0, 55.0, [_cell.number cStringUsingEncoding:NSUTF8StringEncoding], [_cell.number length]); CGContextRestoreGState(context);
Segundo intento, desde zgombosi on iPhone Dev SDK. Resultados idénticos (la fuente era un poco más pequeña aquí, por lo que hay menos recorte).
CGContextRef context = UIGraphicsGetCurrentContext(); CGPoint point = CGPointMake(6.0, 50.0); CGContextSaveGState(context); CGContextTranslateCTM(context, point.x, point.y); CGAffineTransform textTransform = CGAffineTransformMakeRotation(-1.57); CGContextConcatCTM(context, textTransform); CGContextTranslateCTM(context, -point.x, -point.y); [[UIColor redColor] set]; [_cell.number drawAtPoint:point withFont:[UIFont fontWithName:@"Helvetica-Bold" size:14.0]]; CGContextRestoreGState(context);
De hecho, hay algunas maneras de hacerlo. Proporcionar algunos detalles sobre qué exactamente ha intentado y cómo exactamente no funcionó (¿cómo/dónde se recortó?) Haría que sea más fácil responder de manera útil. –
Detalle proporcionado. – s4y