Tengo una imagen de origen que tiene un ancho y alto variables, que debo mostrar en un iPad a pantalla completa UIImageView pero con bordes adicionales alrededor de la imagen. Por lo tanto, mi tarea es crear una nueva imagen con un borde blanco alrededor, pero no superposición en la imagen misma. Actualmente lo estoy haciendo con la superposición a través de este código:CoreGraphics dibujar una imagen en un lienzo en blanco
- (UIImage*)imageWithBorderFromImage:(UIImage*)source
{
CGSize size = [source size];
UIGraphicsBeginImageContext(size);
CGRect rect = CGRectMake(0, 0, size.width, size.height);
[source drawInRect:rect blendMode:kCGBlendModeNormal alpha:1.0];
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetRGBStrokeColor(context, 1.0, 1.0, 1.0, 1.0);
CGContextSetLineWidth(context, 40.0);
CGContextStrokeRect(context, rect);
UIImage *testImg = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return testImg;
}
Puede alguien decirme cómo puedo Primero dibuja un lienzo en blanco que es 40 píxeles más grandes en cada dirección de la imagen de origen y luego dibujar esa imagen en ella ?
Excelente, gracias Vlad – Eugene