嗨,就像我在標題上所說的那樣,我試圖在與UIImage的最大尺寸相匹配的正方形內繪製完整的UIImage。我的問題是我如何讓我的代碼工作。我的代碼正在裁剪的是裁剪到正方形大小。我是新來的IO可以任何一個幫助。如何在邊緣上用白色正方形繪製完整UIImage
PS至少需要調用CGcontext的方法。
謝謝。
- (UIImage*)imageWithBorderFromImage:(UIImage*)source;
{
CGSize size = [source size];
CGFloat width = size.width;
CGFloat height = size.height;
CGSize resizedImageSize;
if (width < height) {
resizedImageSize = CGSizeMake(height, height);
}else {
resizedImageSize = CGSizeMake(width, width);
}
UIGraphicsBeginImageContext(resizedImageSize);
CGRect rect = CGRectMake(0, 0, resizedImageSize.width, resizedImageSize.height);
[source drawInRect:rect blendMode:kCGBlendModeNormal alpha:1.0];
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetRGBStrokeColor(context, 1.0, 0.5, 1.0, 1.0);
CGContextStrokeRect(context, rect);
UIImage *testImg = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return testImg;
}
我在找的結果類型。
使用寬高比來計算新寬度和高度。 –
我已經做了? 'if(width
skip87
最簡單的方法就是使用'UIImageView'。調整'contentMode'並將邊框添加到'UIImageView'。您可以通過'UIView'的'layer'屬性添加'border'並設置'border color'。該層是類CALayer。 – AechoLiu