Mam obraz źródłowy, który ma zmienną szerokość i wysokość, które muszę pokazać na pełnoekranowym iPhonie UIImageView, ale z dodatkiem obramowania wokół samego obrazu. Moim zadaniem jest zatem stworzenie nowego obrazu z białą obwódką wokół niego, ale nie nakładającego się na sam obraz. Jestem obecnie robi to z nałożonych przez ten kod:CoreGraphics narysować obraz na białym płótnie
- (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;
}
Czy ktoś może mi powiedzieć jak mogę najpierw narysować białego płótna, który jest 40 pikseli w każdym kierunku większa niż obrazem źródłowym, a następnie narysować ten obraz na nim ?
Doskonałe dzięki Vlad – Eugene