美文网首页iOS开发
iOS开发之解析GIF图片

iOS开发之解析GIF图片

作者: chasitu | 来源:发表于2019-02-14 17:02 被阅读19次

获取GIF文件每一帧的图片

我们平时使用SDWebImage/GIF加载图片习惯了,但是有时候确实需要获取GIF图片文件每一帧的图片,我们直接上代码

- (NSArray *)processingGIFPictures:(NSString *)name
{
//获取Gif文件
NSURL *gifImageUrl = [[NSBundle mainBundle] URLForResource: name withExtension:@"gif"];

//获取Gif图的原数据
CGImageSourceRef gifSource = CGImageSourceCreateWithURL((CFURLRef)gifImageUrl, NULL);

//获取Gif图有多少帧
size_t gifcount = CGImageSourceGetCount(gifSource);


NSMutableArray *images = [[NSMutableArray alloc] init];


for (NSInteger i = 0; i < gifcount; i++) {
        
        //由数据源gifSource生成一张CGImageRef类型的图片
        
        CGImageRef imageRef = CGImageSourceCreateImageAtIndex(gifSource, i, NULL);
        
        UIImage *image = [UIImage imageWithCGImage:imageRef];
        [images addObject:image];
        CGImageRelease(imageRef);
    }
//得到图片数组
    return images;
}

就这样我们获取了GIF图片文件每一帧的帧图了,接下来就可以为所欲为了-_-

相关文章

网友评论

    本文标题:iOS开发之解析GIF图片

    本文链接:https://www.haomeiwen.com/subject/ubneeqtx.html