Fix the issue that progressive decode logic does not get updated
This commit is contained in:
parent
55a3809412
commit
318cca556b
|
@ -108,28 +108,9 @@ UIImage * _Nullable SDImageLoaderDecodeProgressiveImageData(NSData * _Nonnull im
|
||||||
} else {
|
} else {
|
||||||
cacheKey = imageURL.absoluteString;
|
cacheKey = imageURL.absoluteString;
|
||||||
}
|
}
|
||||||
|
SDImageCoderOptions *coderOptions = SDGetDecodeOptionsFromContext(context, options, cacheKey);
|
||||||
BOOL decodeFirstFrame = SD_OPTIONS_CONTAINS(options, SDWebImageDecodeFirstFrameOnly);
|
BOOL decodeFirstFrame = SD_OPTIONS_CONTAINS(options, SDWebImageDecodeFirstFrameOnly);
|
||||||
NSNumber *scaleValue = context[SDWebImageContextImageScaleFactor];
|
CGFloat scale = [coderOptions[SDImageCoderDecodeScaleFactor] doubleValue];
|
||||||
CGFloat scale = scaleValue.doubleValue >= 1 ? scaleValue.doubleValue : SDImageScaleFactorForKey(cacheKey);
|
|
||||||
NSNumber *preserveAspectRatioValue = context[SDWebImageContextImagePreserveAspectRatio];
|
|
||||||
NSValue *thumbnailSizeValue;
|
|
||||||
BOOL shouldScaleDown = SD_OPTIONS_CONTAINS(options, SDWebImageScaleDownLargeImages);
|
|
||||||
if (shouldScaleDown) {
|
|
||||||
CGFloat thumbnailPixels = SDImageCoderHelper.defaultScaleDownLimitBytes / 4;
|
|
||||||
CGFloat dimension = ceil(sqrt(thumbnailPixels));
|
|
||||||
thumbnailSizeValue = @(CGSizeMake(dimension, dimension));
|
|
||||||
}
|
|
||||||
if (context[SDWebImageContextImageThumbnailPixelSize]) {
|
|
||||||
thumbnailSizeValue = context[SDWebImageContextImageThumbnailPixelSize];
|
|
||||||
}
|
|
||||||
|
|
||||||
SDImageCoderMutableOptions *mutableCoderOptions = [NSMutableDictionary dictionaryWithCapacity:2];
|
|
||||||
mutableCoderOptions[SDImageCoderDecodeFirstFrameOnly] = @(decodeFirstFrame);
|
|
||||||
mutableCoderOptions[SDImageCoderDecodeScaleFactor] = @(scale);
|
|
||||||
mutableCoderOptions[SDImageCoderDecodePreserveAspectRatio] = preserveAspectRatioValue;
|
|
||||||
mutableCoderOptions[SDImageCoderDecodeThumbnailPixelSize] = thumbnailSizeValue;
|
|
||||||
mutableCoderOptions[SDImageCoderWebImageContext] = context;
|
|
||||||
SDImageCoderOptions *coderOptions = [mutableCoderOptions copy];
|
|
||||||
|
|
||||||
// Grab the progressive image coder
|
// Grab the progressive image coder
|
||||||
id<SDProgressiveImageCoder> progressiveCoder = SDImageLoaderGetProgressiveCoder(operation);
|
id<SDProgressiveImageCoder> progressiveCoder = SDImageLoaderGetProgressiveCoder(operation);
|
||||||
|
|
Loading…
Reference in New Issue