如何使用CoreGraphics在透明图像上方绘制图像

时间:2010-12-13 06:24:43

标签: iphone

我想使用coreGraphics在透明图像上创建图像可以告诉我几行代码吗?

1 个答案:

答案 0 :(得分:0)

- (void)drawRect:(CGRect)rect
{
   UIImage *transparentImage = ...;
   [trasparentImage drawInRect:rect]; ///< draw an trasparent image as background.

   UIImage *anImage = ...;
   [anImage drawInRect:rect]; ///< draw an image on an transparent image.

   // get the result from current context
   CGContextRef curCtx = UIGraphicsGetCurrentContext();
   UIImage *result = UIGraphicsGetImageFromCurrentImageContext(curCtx);

   ....
}

有一点:UIImage的draInRect将在当前上下文上绘制图像。在UIView的 - (void)drawRect:(CGRect)rect 中,它会将上下文推送到堆栈中。如果要在self方法中绘制图像,则需要将上下文作为当前上下文。或者,您必须创建一个上下文并通过 CGContextDrawImage()方法绘制图像。