Tuesday, 29 December 2015

Set Image On Frame

SeT Frame on Image


* Write Method Where you want to set Frame on Image :-

 UIImageView * _rotateImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"car.png"]];

 UIImage *borderImage = [UIImage imageNamed:[NSString stringWithFormat:@"borderImage1.png"]];

 borderImage = [self imageWithImage:borderImage scaledToSize:_rotateImageView.image.size];
    
     _rotateImageView.image = self.editor.imageView.image;
    
    NSData *dataFromImage = UIImageJPEGRepresentation(_rotateImageView.image, 1);
     
    CIImage *beginImage= [CIImage imageWithData:dataFromImage];
    
    CIContext *context = [CIContext contextWithOptions:nil];
    
    CIImage *border =[CIImage imageWithData:UIImagePNGRepresentation(borderImage)];
     
    CIFilter *filter= [CIFilter filterWithName:@"CISourceOverCompositing"];  //@"CISoftLightBlendMode"];
    [filter setDefaults];
    [filter setValue:border forKey:@"inputImage"];
     
    [filter setValue:beginImage forKey:@"inputBackgroundImage"];
     
    CIImage *outputImage = [filter valueForKey:@"outputImage"];
    CGImageRef cgimg = [context createCGImage:outputImage fromRect:[outputImage extent]];
    UIImage *newImg = [UIImage imageWithCGImage:cgimg];
     
    _rotateImageView.image = newImg;


* Method call From Upper Coding :-


-(UIImage*)imageWithImage:(UIImage*)image
             scaledToSize:(CGSize)newSize
{
    UIGraphicsBeginImageContext( newSize );
    [image drawInRect:CGRectMake(0,0,newSize.width,newSize.height)];
    UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    
    return newImage;
}



No comments:

Post a Comment