Skip to content

Instantly share code, notes, and snippets.

@sleimanzublidi
Created March 14, 2018 20:29
Show Gist options
  • Save sleimanzublidi/383022e8705a4c210ddadcf0f036a25a to your computer and use it in GitHub Desktop.
Save sleimanzublidi/383022e8705a4c210ddadcf0f036a25a to your computer and use it in GitHub Desktop.
Blur UIImage
public static UIImage WithBlurEffect(this UIImage inputImage, float radius = 15f)
{
if (inputImage == null)
{
return null;
}
var ciImage = new CIImage(inputImage);
var gaussianBlur = new CIGaussianBlur
{
Image = ciImage,
Radius = radius
};
var blurredImage = gaussianBlur.OutputImage;
var context = CIContext.FromOptions(new CIContextOptions
{
UseSoftwareRenderer = true
});
var cgImage = context.CreateCGImage(blurredImage, new RectangleF(0, 0, (float)inputImage.Size.Width, (float)inputImage.Size.Height));
var outputImage = UIImage.FromImage(cgImage);
ciImage.Dispose();
ciImage = null;
gaussianBlur.Dispose();
gaussianBlur = null;
blurredImage.Dispose();
blurredImage = null;
cgImage.Dispose();
cgImage = null;
return outputImage;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment