Fresco - 如何检查文件是否是 webP 动画?

问题描述 投票:0回答:2

我有一个webP格式的图像文件。如何以编程方式检查它是动画 webP 还是静态图像?

android imageview fresco image-rendering animated-webp
2个回答
0
投票

由于您在问题中添加了壁画标签,您可以使用以下实用程序:

ImageFormatChecker.getImageFormat_WrapIOException(encodedImage.getInputStream())
应返回 ImageFormat.WEBP_ANIMATED

https://github.com/facebook/fresco/blob/master/imagepipeline-base/src/main/java/com/facebook/imageformat/DefaultImageFormatChecker.java#L125


0
投票

这里有一些获取格式的方法。 好处是它可以识别 webp 中的动画。 (对于 webp、png、avif 图像的动画和静态类型,mimeType 和扩展名相同)

InputStream is = ... ;
ImageFormat format = ImageFormatChecker.getImageFormat(is);

String uri = ... ;
ImageFormat format = ImageFormatChecker.getImageFormat(uri);

InputStream is = ... ;
ImageFormat format = ImageFormatChecker.getImageFormat_WrapIOException(is);

使用的 Fresco 版本:3.1.3。

© www.soinside.com 2019 - 2024. All rights reserved.