iphone - 调整图像大小 Objective C

标签 iphone ios

我正在 ScrollView 中缩放图像,我希望图像大小根据缩放调整大小,我知道我必须在 scrollViewDidEndZooming 方法中编写一些代码。

我正在关注this link但我认为这没有更新(我在实现调整图像大小类别时遇到错误),所以请以正确的方式指导我,如何根据缩放比例调整图像大小。

谢谢

最佳答案

#define DOC_WIDTH 505
#define DOC_HEIGHT 802


+(UIImage*)imageResizeWithBorderFromImage:(UIImage*)source
{

//******* Change size
    int tnw;
    int tnh;

    double x_ratio = DOC_WIDTH / source.size.width;
    double y_ratio = DOC_HEIGHT / source.size.height;
    if (source.size.width <= DOC_WIDTH && source.size.height <= DOC_HEIGHT){
        tnw=(int)source.size.width ;
        tnh=(int)source.size.height;
    }
    else if ((x_ratio * source.size.height) < DOC_HEIGHT) {
        tnh = (int)(ceil(x_ratio * source.size.height));
        tnw = (int)DOC_WIDTH ;
    }
    else {
        tnw = (int)(ceil(y_ratio * source.size.width));
        tnh = (int)DOC_HEIGHT;
    }
    CGSize size = CGSizeMake(tnw, tnh);

    //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,(0/255.f),(162/255.f),(237/255.f), 1.0);
    CGContextStrokeRect(context, rect);
    UIImage *testImg =  UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return testImg;
}

关于iphone - 调整图像大小 Objective C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12650712/

相关文章:

ios - 无法在单独的 View Controller 中更改 UIBarButtonItem 的背景

iphone - 导入 .m 实现文件时出错

javascript - iOS Safari 显示来自 .toLocaleString() 和 .slice() 的不同数据

iphone - 在 iOS 中清除内存警告的 url 缓存

iOS App 兼容所有设备版本

iphone - "Your Second iOS App": How do I implement a Singleton?

objective-c - 调用 AVAudioSession setActive :NO 后恢复 iPod 播放

iphone - 每次执行进入我的一个类时停止执行(断点)

iphone - 当用户触摸 iPhone 中的 super View 时,如何实现关闭 subview ?

android - 如何在 flutter 的下拉菜单中进行选择?