在圖片上覆蓋顏色

来源:互联网 发布:sql 求和 编辑:程序博客网 时间:2024/04/30 21:25

- (UIImage *)image:(UIImage *)argImage

  thintedWithColor:(UIColor *)argColor

{

    if (argColor != nil)

    {

        UIGraphicsBeginImageContext([argImage size]);

        

        CGContextRef currentContext = UIGraphicsGetCurrentContext();

        CGImageRef maskImage = [argImage CGImage];

        CGContextClipToMask(currentContext, CGRectMake(0.0, 0.0, [argImage size].width, [argImage size].height), maskImage);

        CGContextDrawImage(currentContext, CGRectMake(0.0, 0.0, [argImage size].width, [argImage size].height), [argImage CGImage]);

        

        [argImage drawAtPoint:CGPointMake(0.0, 0.0)];

        [argColor setFill];

        UIRectFillUsingBlendMode(CGRectMake(0.0, 0.0, [argImage size].width, [argImage size].height), kCGBlendModeColor);

        

        UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();

        UIGraphicsEndImageContext();

        

        return newImage;

    }

    else

    {

        return argImage;

    }

}


原创粉丝点击