如何以最佳方式缩放CGImage?

Bha*_*uja 5 core-graphics image-processing ios

一种方法是:

CGImageRef scaledImage(CGImageref, destination rect)
{
    context = CGBitmapContextCreate(rect...);
    CGContextDrawImage(context, rect);
    return CGBitmapContextCreateImage(context)
}
Run Code Online (Sandbox Code Playgroud)

问题:

如果图像缩放操作非常频繁,则创建位图上下文可能非常昂贵.有没有其他方法可以扩展CGimage?或者缓存这样的位图上下文以进行缩放操作是唯一的选择吗?

小智 1

图像缩放需要完整的图像处理,因此您可以使用缓存的上下文(如您之前所说)来加速它,或者例如在 GPU 上缩放图像。