SDWebImage / SDWebImageAVIFCoder

A SDWebImage coder plugin to support AVIF(AV1 Image File Format) image
MIT License
55 stars 14 forks source link

About SDImageCoderDecodeThumbnailPixelSize & SDImageCoderDecodePreserveAspectRatio #49

Closed MarvinShawn closed 1 year ago

MarvinShawn commented 1 year ago

Nice day :) wonder how to handle SDImageCoderDecodeThumbnailPixelSize and SDImageCoderDecodePreserveAspectRatio passed by options when call - (UIImage *)decodedImageWithData:(NSData *)data options:(nullable SDImageCoderOptions *)options

dreampiggy commented 1 year ago

See documentation...It's used when your web image url's own image size (like 400x300), does not match the desired size you want and how we scale down.

ThumbnailPixelSize: pass a CGSize, like (200, 200) PreserveAspectRatio: pass bool, default true, means always scale aspect fit, else will scale to fit

For this case, that 400x300 will scaled down keeping aspect ratio to 200x150

MarvinShawn commented 1 year ago

yeah, right. But I can't find SDWebImageAVIFCoder handled SDImageCoderDecodeThumbnailPixelSize logic(see https://github.com/SDWebImage/SDWebImageAVIFCoder/blob/33ad65f995693898d48b4610888079a8a5f4924a/SDWebImageAVIFCoder/Classes/SDImageAVIFCoder.m#L92).

And In SDWebImageWebPCoder , We can find it handled. (see https://github.com/SDWebImage/SDWebImageWebPCoder/blob/7087a82a3d23cbace8e4bb12cd0df054c7f2356a/SDWebImageWebPCoder/Classes/SDImageWebPCoder.m#L195).

dreampiggy commented 1 year ago

That SDWebImageAVIFCoder need update for this support. The codec plugins need update when SDWebImage Core prodide new options, but I miss that AVIF one

dreampiggy commented 1 year ago

Supported in v0.10.0 via #52

There are still more to do, SDWebImage coder plugin feature (WebPCoder, for example) support like:

But I don't have enough freetime to complete. If you're interested in, please help and PR