2013-11-04 60 views
1

目前我做以下重新缩放图像:当我重新调整,从1920×1080 1280×720到,最终的图像质量太低OSX可可应用程序:哪种缩放图像的方法在图像质量方面最好?

CGImageRef resizeCGImage(CGImageRef image, size_t new_width, size_t new_height) 
{ 


CGColorSpaceRef colorspace = CGImageGetColorSpace(image); 
CGContextRef context = CGBitmapContextCreate(NULL, new_width,new_height, 
              8, 
              new_width*4, 
              colorspace, 
              kCGImageAlphaNoneSkipLast); 

if (context != NULL) 
{ 
    CGContextSetInterpolationQuality(context, kCGInterpolationHigh); 
    CGContextDrawImage(context, CGRectMake(0 , 0, new_width, new_height), image); 
    CGImageRef imgRef = CGBitmapContextCreateImage(context); 
    CGContextRelease(context); 

    return imgRef; 
} 

return NULL; 

} 

。它在小文本周围最为引人注目(这变得难以阅读)。

是否有更好的方法(由Cocoa API提供)来重新缩放图像? “更好”是指更好的图像质量。

回答

2

用CILanczosScaleTransform过滤器尝试核心图像。

相关问题