2011-05-25 32 views
7

मैं UIImageView से एक छवि ले रहा हूं और यह छवि मैं प्रोग्रामेटिक रूप से बना रहा हूं.अब मैं इस छवि को संसाधन फ़ोल्डर में jpg या png प्रारूप में सहेजना चाहता हूं। क्या किसी को पता है कि मैं jpg या png प्रारूप में छवि को कैसे सहेज सकता हूं?आईफोन में जेपीजी या पीएनजी प्रारूप में छवि को कैसे सहेजना है?

अग्रिम धन्यवाद!

उत्तर

14

यह काम करना चाहिए:

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES); 
NSString *docs = [paths objectAtIndex:0]; 
NSString* path = [docs stringByAppendingFormat:@"/image1.jpg"]; 

NSData* imageData = [NSData dataWithData:UIImageJPEGRepresentation(imageView.image, .8)]; 
NSError *writeError = nil; 

if(![imageData writeToFile:path options:NSDataWritingAtomic error:&writeError]) { 
    NSLog(@"%@: Error saving image: %@", [self class], [writeError localizedDescription]); 
} 
+1

यह जाँच करने के लिए सही नहीं है कॉल के वापसी मूल्य को 'लिखने के लिए' टाइप करने के लिए त्रुटि ऑब्जेक्ट 'लिखने के लिए:'। 'BOOL' वापसी' NO' होने पर केवल वैध ऑब्जेक्ट होने की गारंटी है; यदि यह 'हां 'है, तो त्रुटि _not_' nil' होने की गारंटी है। –

+0

आपके उत्तर के लिए धन्यवाद ... काम कर रहा है ... –

2

सावधान। यह पंक्ति एक बग है:

UIImageJPEGRepresentation(imageView.image, 80) 

आप शीर्ष लेख को देखें, तो संपीड़न गुणवत्ता 0 (सबसे हानिपूर्ण) और 1 (कम से कम संपीड़न) के बीच एक नाव होना चाहिए

UIKIT_EXTERN NSData *UIImageJPEGRepresentation(UIImage *image, CGFloat compressionQuality); // return image as JPEG. May return nil if image has no CGImageRef or invalid bitmap format. compression is 0(most)..1(least) 
संबंधित मुद्दे