Note that there are some explanatory texts on larger screens.

plurals
  1. POCIGaussianBlur and CIAffineClamp on iOS 6
    text
    copied!<p>I am trying to blur an image using CoreImage on iOS 6 without having a noticeable black border. <a href="https://developer.apple.com/library/mac/documentation/GraphicsImaging/Reference/CoreImageFilterReference/Reference/reference.html#//apple_ref/doc/filter/ci/CIAffineClamp" rel="noreferrer">Apple documentation</a> states that using a CIAffineClamp filter can achieve this but I'm not able to get an output image from the filter. Here's what I tried, but unfortunately an empty image is created when I access the [clampFilter outputImage]. If I only perform the blur an image is produced, but with the dark inset border.</p> <pre><code>CIImage *inputImage = [[CIImage alloc] initWithCGImage:self.CGImage]; CIContext *context = [CIContext contextWithOptions:nil]; CGAffineTransform transform = CGAffineTransformIdentity; CIFilter *clampFilter = [CIFilter filterWithName:@"CIAffineClamp"]; [clampFilter setValue:inputImage forKey:kCIInputImageKey]; [clampFilter setValue:[NSValue valueWithBytes:&amp;transform objCType:@encode(CGAffineTransform)] forKey:@"inputTransform"]; CIImage *outputImage = [clampFilter outputImage]; CIFilter *blurFilter = [CIFilter filterWithName:@"CIGaussianBlur" keysAndValues:kCIInputImageKey, outputImage, @"inputRadius", [NSNumber numberWithFloat:radius], nil]; outputImage = [blurFilter outputImage]; CGImageRef cgimg = [context createCGImage:outputImage fromRect:[outputImage extent]]; UIImage *blurredImage = [UIImage imageWithCGImage:cgimg]; CGImageRelease(cgimg); </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload