2012-05-25 14 views
6

Pracuję na iphone i biorę podklasę UIView i metodą draw remis robię jakiś projekt. Chcę przekonwertować ten widok w formacie .png.przekonwertować uiview do .png obrazu

Z góry dziękuję.

+0

u chcą uzyskać zrzut ekranu z tym UIView ?? –

+0

chcesz, aby obraz był konwertowany do formatu .png lub przechwytywania ekranu –

Odpowiedz

21
UIGraphicsBeginImageContext(myView.frame.size); 
    [myView.layer renderInContext:UIGraphicsGetCurrentContext()]; 
    UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext(); 
    UIGraphicsEndImageContext(); 
    NSData *data=UIImagePNGRepresentation(viewImage); 
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *documentsDirectory = [paths objectAtIndex:0]; 
    NSString *strPath = [documentsDirectory stringByAppendingPathComponent:@"myimage.png"]; 
    [data writeToFile:strPath atomically:YES]; 
+0

dzięki temu pokazuje obraz w konsoli, ale kiedy pokazuję go na zdjęciu to nie jest pokaz mi pomóc – Chandni

+0

Sprawdź swój IBOutlet, czy obraz jest ustawiony czy nie – Dhawal

0
UIWindow *keyWindow = [[UIApplication sharedApplication] keyWindow]; 
    if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) 
     UIGraphicsBeginImageContextWithOptions(YourView.frame.size, NO, [UIScreen mainScreen].scale); 
    else 
     UIGraphicsBeginImageContext(keyWindow.bounds.size); 

    CGContextRef context = UIGraphicsGetCurrentContext(); 
    [keyWindow.layer renderInContext:context]; 
    UIImage *img = UIGraphicsGetImageFromCurrentImageContext(); 
    UIImageWriteToSavedPhotosAlbum(img, nil, nil, nil); 
    UIGraphicsEndImageContext(); 
Powiązane problemy