文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Android如何获取图片或视频略缩图

2022-06-06 07:50

关注

根据指定的图像路径和大小来获取缩略图 此方法有两点好处:

1.使用较小的内存空间,第一次获取的bitmap实际上为null,只是为了读取宽度和高度,第二次读取的bitmap是根据比例压缩过的图像,第三次读取的bitmap是所要的缩略图。

2. 缩略图对于原图像来讲没有拉伸,这里使用了2.2版本的新工具ThumbnailUtils,使 用这个工具生成的图像不会被拉伸。



 public static Bitmap getImageThumbnail(String imagePath, int width, int height)
 {
 Bitmap bitmap = null;
 BitmapFactory.Options options = new BitmapFactory.Options();
 options.inJustDecodeBounds = true;
 // 获取这个图片的宽和高,注意此处的bitmap为null
 bitmap = BitmapFactory.decodeFile(imagePath, options);
 options.inJustDecodeBounds = false; // 设为 false
 // 计算缩放比
 int h = options.outHeight;
 int w = options.outWidth;
 int beWidth = w / width;
 int beHeight = h / height;
 int be = 1;
 if (beWidth < beHeight)
 {
  be = beWidth;
 }
 else
 {
  be = beHeight;
 }
 if (be <= 0)
 {
  be = 1;
 }
 options.inSampleSize = be;
 // 重新读入图片,读取缩放后的bitmap,注意这次要把options.inJustDecodeBounds 设为 false
 bitmap = BitmapFactory.decodeFile(imagePath, options);
 // 利用ThumbnailUtils来创建缩略图,这里要指定要缩放哪个Bitmap对象
 bitmap = ThumbnailUtils.extractThumbnail(bitmap, width, height,
  ThumbnailUtils.OPTIONS_RECYCLE_INPUT);
 return bitmap;
 }
 
 public static Bitmap getVideoThumbnail(String videoPath, int width, int height,
  int kind)
 {
 Bitmap bitmap = null;
 // 获取视频的缩略图
 bitmap = ThumbnailUtils.createVideoThumbnail(videoPath, kind);
 System.out.println("w" + bitmap.getWidth());
 System.out.println("h" + bitmap.getHeight());
 bitmap = ThumbnailUtils.extractThumbnail(bitmap, width, height,
  ThumbnailUtils.OPTIONS_RECYCLE_INPUT);
 return bitmap;
 }
您可能感兴趣的文章:Android开发之多媒体文件获取工具类实例【音频,视频,图片等】Android多媒体之VideoView视频播放器Android多媒体教程之播放视频的四种方法Android开发之MediaPlayer多媒体(音频,视频)播放工具类Android开发实现的IntentUtil跳转多功能工具类【包含视频、音频、图片、摄像头等操作功能】Android中简单调用图片、视频、音频、录音和拍照的方法android 获取视频,图片缩略图的具体实现Android获取SD卡上图片和视频缩略图的小例子Android编程获取图片和视频缩略图的方法android提取视频多张图片和视频信息实例Android编程实现获取多媒体库视频、音频、图片的方法


阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-移动开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯