title: Use CGContextClip to clip a circle with image
body: <p>Have a imageViewA (frame{0,0,320,200}) in my app, and I want to clip a circle with the imageViewA's center, radius=50, and draw into another imageViewB (frame{0,0,100,100});
  the original image effect like this :</p>
  
  <p><img src="https://i.stack.imgur.com/GIjNV.png" alt="enter image description here"></p>
  
  <p>and use below code to clip:</p>
  
  <pre><code>UIGraphicsBeginImageContext(self.frame.size);
  CGContextRef ctx = UIGraphicsGetCurrentContext();
  CGFloat height = self.bounds.size.height;
  CGContextTranslateCTM(ctx, 0.0, height);
  CGContextScaleCTM(ctx, 1.0, -1.0);
  CGContextAddArc(ctx, self.frame.size.width/2, self.frame.size.height/2, 50, 0, 2*M_PI, 0);
  CGContextClosePath(ctx);
  CGContextSaveGState(ctx);
  CGContextClip(ctx);
  CGContextDrawImage(ctx, CGRectMake(0,0,self.frame.size.width, self.frame.size.height), image.CGImage);
  CGContextRestoreGState(ctx);
  CGImageRef imageRef = CGBitmapContextCreateImage (ctx);
  UIImage *newImage = [UIImage imageWithCGImage:imageRef];
  NSString *headerPath = [NSString stringWithFormat:@"%@/header.png",HomeDirectory];
  NSData *imageData = UIImageJPEGRepresentation(newImage, 1.0);
  if([imageData writeToFile:headerPath atomically:YES]){
      imageViewB.image = [UIImage imageWithContentsOfFile:headerPath];
  }
  </code></pre>
  
  <p>clip image effect like this:</p>
  
  <p><img src="https://i.stack.imgur.com/7dcu7.png" alt="enter image description here"></p>
  
  <p>I only need the circle view, but the clip effect display that imageViewB has white space.
  How to clip this image correctly?
  Thanks!</p>