Подтвердить что ты не робот

<Ошибкa>: CGContextSaveGState: недопустимый контекст 0x0 Ошибка

Я получаю некоторую проблему, связанную с подготовкой UIImage из UIView. Я иногда (но не всегда) вижу ошибку

<Error>: CGContextSaveGState: invalid context 0x0

Я использую iPhone SDK 4.0. Мой код:

-(void)drawRect:(CGRect)rect
{
     // Customized to draw some text
}


-(UIImage*) PrepareBackImage:(CGRect) aRect // aRect = (0,0,1800,1200)
{
    UIImage* background;

    background      = [self GetImageFromView:self toRect:self.frame];
    UIGraphicsBeginImageContext(aRect.size);

    CGPoint backgroundPoint = CGPointMake(0,0);
    [background drawAtPoint:backgroundPoint];

    UIImage* backImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();

    return backImage;
}

- (UIImage *) GetImageFromView:(UIView *)aView toRect:(CGRect)aRect
{
    CGSize pageSize = aRect.size;
    UIGraphicsBeginImageContext(pageSize);
    [aView.layer renderInContext:UIGraphicsGetCurrentContext()];
    UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return image;
}
4b9b3361

Ответ 1

Ошибка <Error>: CGContextSaveGState: invalid context 0x0 означает, что ваш CGContext равен NULL или, что более разумное объяснение в вашем случае, что размер Контекста пуст (CGSizeZero)