How to convert GIF to a picture array, iOS development
//Introducing Header Files#import<imageio/imageio.h>-(Nsmutablearray *) loadgifarray{NSString*path = [[NSBundle mainbundle] Pathforresource:@"Pross"OfType:@"gif"]; NSData*data =[NSData Datawithcontentsoffile:path]; //Target ArrayNsmutablearray *images =[self prasegifdatatoimagearray:data]; returnimages;}//gif converted to ImageView animated array-(Nsmutablearray *) Prasegifdatatoimagearray: (NSData *) data; {Nsmutablearray*frames =[[Nsmutablearray alloc] init]; Cgimagesourceref src=Cgimagesourcecreatewithdata ((cfdataref) data, NULL); CGFloat Animationtime=0. F; if(SRC) {size_t l=cgimagesourcegetcount (SRC); Frames=[Nsmutablearray arraywithcapacity:l]; for(size_t i =0; I < L; i++) {cgimageref img=Cgimagesourcecreateimageatindex (src, I, NULL); Nsdictionary*properties = (Nsdictionary *) cfbridgingrelease (Cgimagesourcecopypropertiesatindex (SRC, I, NULL)); Nsdictionary*frameproperties = [Properties Objectforkey: (NSString *) kcgimagepropertygifdictionary]; NSNumber*delaytime = [frameproperties objectforkey: (NSString *) Kcgimagepropertygifunclampeddelaytime]; Animationtime+=[Delaytime Floatvalue]; if(img) {[Frames addobject:[uiimage imagewithcgimage:img]]; Cgimagerelease (IMG); }} cfrelease (SRC); } returnframes;}
Convert a GIF to an animated array that Uiimageview can display