【问题标题】:How to get mime type from a bitmap object in android?如何从android中的位图对象获取mime类型?
【发布时间】:2013-01-09 07:03:00
【问题描述】:

我想获取位图对象的 mime 类型。 实际上我已经使用

压缩了一个位图
bitmap.compress (Bitmap.CompressFormat.PNG , 100, stream);

现在我想交叉检查格式、outBounds 和内存空间大小。但我不想做冗长或乏味的任务,例如。将其转换回流,然后使用带有选项的 BitmapFactory 再次将其转换为 BItmap。

【问题讨论】:

标签: android bitmap mime-types


【解决方案1】:

就像 Dmitry 建议的那样,如果您拥有的是流中的压缩图像,那么您确实需要使用 BitmapFactory 对其进行解码以判断它是什么类型。 (从技术上讲,您也可以自己阅读流并对其运行自己的ad hoc文件格式检查,但我假设您更喜欢使用现有工具而不是滚动你自己的。)

您可以并且应该进行的一项优化是设置BitmapFactory.Options.inJustDecodeBounds 以避免不必要地解码整个图像,如果您只想知道它是什么类型。解码后,outMimeType 属性应该为您提供图像的类型。

至于标题中的字面问题,这没有意义。 Bitmap 没有 MIME 类型——它只是一个像素数组的容器。您可以使用各种格式(如 JPEG、PNG 或 WEBP)将位图压缩成流,但这只会为您提供图像的压缩副本。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-10-04
    • 2021-02-23
    • 1970-01-01
    • 1970-01-01
    • 2012-09-15
    • 2017-02-12
    • 2021-11-12
    相关资源
    最近更新 更多