美文网首页
Android计算一张图片的大小

Android计算一张图片的大小

作者: 业精于勤_荒于嬉 | 来源:发表于2023-07-31 05:25 被阅读0次

要计算一张图片的大小,可以使用以下步骤:

1、获取图片文件的路径或者资源ID
2、创建一个BitmapFactory.Options对象,并将inJustDecodeBounds属性设置为true。这样在解码过程中不会真正加载整个图片到内存中,而是只获取宽度和高度信息。
3、使用BitmapFactory.decodeFile()或者BitmapFactory.decodeResource()方法来解码图片,并传入之前创建的Options对象。
4、通过Options对象的outWidth和outHeight属性获取到图片的实际宽度和高度。
5、根据宽度和高度计算出图片的大小。可以使用公式:大小=宽度x高度x每像素所占字节数。每像素所占字节数取决于图像格式(例如 ARGB_8888是4字节)

// 计算本地文件路径对应的图片大小
public long calculateImageSize(String filePath) {
    BitmapFactory.Options options = new BitmapFactory.Options();
    options.inJustDecodeBounds = true;
    BitmapFactory.decodeFile(filePath, options);

    int width = options.outWidth;
    int height = options.outHeight;

   // 计算每个像素所占字节数,默认为 ARGB_8888 格式,即 4 字节
   int bytesPerPixel = 4; 

   // 计算总大小
   long sizeInBytes= (long)width * height * bytesPerPixel;

   return sizeInBytes;
}

// 计算资源ID对应的图片大小
public long calculateImageSize(Context context, int resourceId) {
    BitmapFactory.Options options = new BitmapFactory.Options();
    options.inJustDecodeBounds = true;
    BitmapFactory.decodeResource(context.getResources(), resourceId, options);

    int width = options.outWidth;
    int height = options.outHeight;

   // 计算每个像素所占字节数,默认为 ARGB_8888 格式,即 4 字节
   int bytesPerPixel = 4; 

   // 计算总大小
   long sizeInBytes= (long)width * height * bytesPerPixel;

   return sizeInBytes;
}

这样就可以得到图片的大小。请注意,由于计算结果是以字节为单位的,如果需要更友好地展示(如KB或MB),可以进行相应的转换。

相关文章

  • 多媒体编程

    多媒体编程 文字、图片、音频、视频 计算图片大小 加载大图片 图片大小的计算图片大小=图片总像素*每个像素的大小b...

  • unity UGUI滑动菜单栏吸附效果

    思路:1 计算图片从一张移动到第二张的距离==图片的大小+图片之间的间距2 获取content的X的位置3 计算滑...

  • 如何计算一张图片的大小

    1个像素 image.png 10个像素image.png 100个像素image.png 像素尺寸(Pixel ...

  • 性能优化<第六篇>:图片压缩

    1、Android常用的图片格式 2、位图的色彩模式 3、解码 4、Bitmap大小的计算 5、图片压缩思路 6、...

  • android bitmap压缩方案

    思考的问题: 一张jpg格式图片,在电脑上图片大小303.96kb,加载到手机内存的大小是多少在android手机...

  • android笔记-多媒体编程

    多媒体概念(了解) 文字、图片、音频、视频 计算机图片大小的计算(掌握) 图片大小 = 图片的总像素 * 每个像素...

  • 使用JavaScript实现图片轮播效果

    原理 图片轮播原理:将一系列大小相等的图片平铺,利用css布局只显示一张图片,其他图片隐藏,通过计算偏移量利用定时...

  • 关于Android中图片大小、内存占用和drawable文件夹研

    引用链接 关于Android中图片大小、内存占用与drawable文件夹关系的研究与分析 结果分析 同一张图片,放...

  • Bitmap全面解析

    Bitmap的大小计算 一张 300x400 的 jpeg 图片,我把它放到 drawable-xxhdpi 目录...

  • 图片简单操作

    图片大小 图片在计算机中的大小 图片的总大小 = 图片的总像素 * 每个像素占用的大小 位图 bmp格式的图片是无...

网友评论

      本文标题:Android计算一张图片的大小

      本文链接:https://www.haomeiwen.com/subject/rmwspdtx.html