根据一定的宽高向服务器上传图片,上下左右有白边,有知道怎么回事的么,
+ (UIImage *)scaleToSize:(UIImage *)image
{
UIImage *newimage;
if (nil == image) {
newimage = nil;
}
else
{
CGSize newSize = CGSizeMake(320.f, 480.f);// 480*320 根据4屏幕宽高截取图片
CGSize oldsize = image.size;
CGRect rect;
if (newSize.width/newSize.height > oldsize.width/oldsize.height)
{
rect.size.width = newSize.height*oldsize.width/oldsize.height;
rect.size.height = newSize.height;
rect.origin.x = (newSize.width - rect.size.width)/2;
rect.origin.y = 0;
}
else
{
rect.size.width = newSize.width;
rect.size.height = newSize.width*oldsize.height/oldsize.width;
rect.origin.x = 0;
rect.origin.y = (newSize.height - rect.size.height)/2;
}
UIGraphicsBeginImageContext(newSize);
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetFillColorWithColor(context, [[UIColor clearColor] CGColor]);
UIRectFill(CGRectMake(0, 0, newSize.width, newSize.height));//clear background
[image drawInRect:rect];
newimage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
}
return newimage;
}![图片描述][1]
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论