title: Draw partial image or clipping diagonally using Core Graphics
body: <p>I am looking to draw an image using Core Graphics. However I am able to draw the partial image i.e horizontally &amp; vertically. But instead of it I want to have it in a diagonal Way. For more clarification, please refer to below images:</p>
  
  <p>Real Image: <img src="https://i.stack.imgur.com/fiB5e.png" alt="enter image description here"></p>
  
  <p>Required Image Output: <img src="https://i.stack.imgur.com/P3yBz.png" alt="enter image description here"></p>
  
  <p>Below is the code using to fill the Layer with Color:</p>
  
  <pre><code>    CGContextRef contextRef = UIGraphicsGetCurrentContext();
  
      CGContextMoveToPoint(contextRef, r.origin.x, r.origin.y );
      CGContextAddLineToPoint(contextRef, r.origin.x , r.origin.y);
      CGContextAddLineToPoint(contextRef, r.origin.x + (r.size.width ), r.origin.y + (r.size.height));
      CGContextAddLineToPoint(contextRef, r.origin.x , r.origin.y + (r.size.height));
      CGContextAddLineToPoint(contextRef, r.origin.x  , r.origin.y);
      CGContextSetRGBFillColor(contextRef, [[color objectAtIndex:0]floatValue]/255.0f, [[color objectAtIndex:1]floatValue]/255.0f, [[color objectAtIndex:2]floatValue]/255.0f, .5);
      CGContextSetRGBStrokeColor(contextRef,[[color objectAtIndex:0]floatValue]/255.0f, [[color objectAtIndex:1]floatValue]/255.0f, [[color objectAtIndex:2]floatValue]/255.0f, 0.5);
      CGContextFillPath(contextRef);
  </code></pre>
  
  <p>Now, I want to draw an image on this Graphics Layer rather than filling color in it. I didn't get any way to crop this image diagonally since we can only pass parameters like Origin x,y &amp; Size Height, Width.</p>