2011-11-25 58 views
0

我在输出视图中看到这些错误。我试图将图像混合到另一个图像上,我的程序也提供了所需的输出。只是想知道为什么会出现这些错误,以及如何删除它们?我的代码编写如下:
错误:混合2图像时出错

<Error>: CGContextSaveGState: invalid context 0x0
<Error>: CGContextSetBlendMode: invalid context 0x0
<Error>: CGContextSetAlpha: invalid context 0x0
<Error>: CGContextTranslateCTM: invalid context 0x0
<Error>: CGContextScaleCTM: invalid context 0x0
<Error>: CGContextDrawImage: invalid context 0x0
<Error>: CGContextRestoreGState: invalid context 0x0

代码:

(UIImage*) blendImage 
{ 
    CGFloat ox = self.scrollView.contentOffset.x; 
    CGFloat oy = self.scrollView.contentOffset.y; 
    CGFloat zoomScale = self.scrollView.zoomScale; 
    CGFloat cx = (ox + self.cropRectangleButton.frame.origin.x -75.0f) *2.0f/zoomScale; 
    CGFloat cy = (oy + self.cropRectangleButton.frame.origin.y -85.0f)*2.0f/zoomScale; 
    CGFloat cw = 600.0f/zoomScale; 
    CGFloat ch = 600.0f/zoomScale; 
    CGRect cropRect = CGRectMake(cx, cy, cw, ch); 
    UIImage *maskImage=[UIImage imageNamed:@"teeth02"]; 
    [maskImage drawInRect:cropRect]; 
    [self.photo drawInRect:imageViewFrame]; 
    UIGraphicsBeginImageContext(self.photo.size); 
    [self.photo drawAtPoint:CGPointMake(0,0)]; 
    [maskImage drawAtPoint:CGPointMake(cx, cy)]; 
    UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext(); 
    UIGraphicsEndImageContext(); 
    return newImage; 
} 
+0

哪里和如何?你能帮忙吗?我是新来的 –

+0

对不起误解 – Aravindhan

回答

1

它看起来像你打电话[maskImage drawInRect:cropRect];外的图形上下文。 drawInRect:要求要设置的当前上下文

+0

是的,谢谢。问题已经解决了。 我搬了[maskImage drawInRect:cropRect];和[self.photo drawInRect:imageViewFrame];在行之间UIImage * newImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); 现在问题已解决 –