git 图片的判断

1. 可以根据图片的url 后缀是否包含gif 来判断


2.sdWebImage 判断原理 比较严格的判断方式

取出图片的第一个字节,根据字节的类型就可以判断是否为gif 图片

#import "NSData+ImageContentType.h"

@implementation NSData (ImageContentType)

+ (NSString *)sd_contentTypeForImageData:(NSData *)data {

uint8_t c;

[data getBytes:&c length:1];

switch (c) {

case 0xFF:

return @"image/jpeg";

case 0x89:

return @"image/png";

case 0x47:

return @"image/gif";

case 0x49:

case 0x4D:

return @"image/tiff";

case 0x52:

// R as RIFF for WEBP

if ([data length] < 12) {

return nil;

}

NSString *testString = [[NSString alloc] initWithData:[data subdataWithRange:NSMakeRange(0, 12)] encoding:NSASCIIStringEncoding];

if ([testString hasPrefix:@"RIFF"] && [testString hasSuffix:@"WEBP"]) {

return @"image/webp";

}

return nil;

}

return nil;

}


3.gif 图片动画实现的原理

将gif 图片切为一针一针,然后用 [UIImage animatedImageWithImages:<#(nonnull NSArray*)#> duration:<#(NSTimeInterval)#>]来实现动画

大致思路记下

你可能感兴趣的:(git 图片的判断)