职业IT人-IT人生活圈

 找回密码
 成为会员
搜索
查看: 572|回复: 1

android获取图片和视频的缩略图

[复制链接]
楠楠 发表于 2011-8-30 10:22 | 显示全部楼层 |阅读模式
获取图片缩略图:


  
byte[] imageByte=getImageFromURL(urlPath.trim());   
            //以下是把图片转化为缩略图再加载   
            BitmapFactory.Options options = new BitmapFactory.Options();   
            options.inJustDecodeBounds = true;   
            BitmapFactory.decodeByteArray(imageByte, 0, imageByte.length);   <SPAN style="LINE-HEIGHT: 25px; FONT-FAMILY: Helvetica, Tahoma, Arial, sans-serif; WHITE-SPACE: normal; FONT-SIZE: 14px"> //此时返回bitmap为空 </SPAN>   
            options.inJustDecodeBounds = false;   
            int be = (int)(options.outHeight / (float)200);   
            if (be <= 0){   
                be = 1;   
            }   
            options.inSampleSize = be;        
            return BitmapFactory.decodeByteArray(imageByte, 0, imageByte.length,options);  //返回缩略图  

byte[] imageByte=getImageFromURL(urlPath.trim());
                        //以下是把图片转化为缩略图再加载
                        BitmapFactory.Options options = new BitmapFactory.Options();
                        options.inJustDecodeBounds = true;
                        BitmapFactory.decodeByteArray(imageByte, 0, imageByte.length);    //此时返回bitmap为空
                        options.inJustDecodeBounds = false;
                        int be = (int)(options.outHeight / (float)200);
                if (be <= 0){
                        be = 1;
                }
                options.inSampleSize = be;     
                        return BitmapFactory.decodeByteArray(imageByte, 0, imageByte.length,options);  //返回缩略图

获取视频缩略图:

/**
* 根据视频Uri地址取得指定的视频缩略图
* @param cr  
* @param uri  本地视频Uri标示
* @return 返回bitmap类型数据
*/
public static Bitmap getVideoThumbnail(ContentResolver cr, Uri uri) {
  
Bitmap bitmap = null;   
BitmapFactory.Options options = new BitmapFactory.Options();   
options.inDither = false;   
options.inPreferredConfig = Bitmap.Config.ARGB_8888;   
Cursor cursor = cr.query(uri,new String[] { MediaStore.Video.Media._ID }, null, null, null);   
  
if (cursor == null || cursor.getCount() == 0) {   
    return null;   
}   
cursor.moveToFirst();   
String videoId = cursor.getString(cursor.getColumnIndex(MediaStore.Video.Media._ID));  //image id in image table.s   
  
if (videoId == null) {   
return null;   
}   
cursor.close();   
long videoIdLong = Long.parseLong(videoId);   
bitmap = MediaStore.Video.Thumbnails.getThumbnail(cr, videoIdLong,Images.Thumbnails.MICRO_KIND, options);   
  
return bitmap;   
}  

                Bitmap bitmap = null;
                BitmapFactory.Options options = new BitmapFactory.Options();
                options.inDither = false;
                options.inPreferredConfig = Bitmap.Config.ARGB_8888;
                Cursor cursor = cr.query(uri,new String[] { MediaStore.Video.Media._ID }, null, null, null);
       
                if (cursor == null || cursor.getCount() == 0) {
                    return null;
                }
                cursor.moveToFirst();
                String videoId = cursor.getString(cursor.getColumnIndex(MediaStore.Video.Media._ID));  //image id in image table.s
       
                if (videoId == null) {
                return null;
                }
                cursor.close();
                long videoIdLong = Long.parseLong(videoId);
                bitmap = MediaStore.Video.Thumbnails.getThumbnail(cr, videoIdLong,Images.Thumbnails.MICRO_KIND, options);

                return bitmap;
                } /**
* 根据视频在手机中的地址路径取得指定的视频缩略图
* @param cr  
* @param fileName  本地视频地址
* @return 返回bitmap类型数据
*/

  
public static Bitmap getVideoThumbnail(ContentResolver cr, Uri uri) {   
        Bitmap bitmap = null;   
        BitmapFactory.Options options = new BitmapFactory.Options();   
        options.inDither = false;   
        options.inPreferredConfig = Bitmap.Config.ARGB_8888;   
        Cursor cursor = cr.query(uri,new String[] { MediaStore.Video.Media._ID }, null, null, null);   
      
        if (cursor == null || cursor.getCount() == 0) {   
            return null;   
        }   
        cursor.moveToFirst();   
        String videoId = cursor.getString(cursor.getColumnIndex(MediaStore.Video.Media._ID));  //image id in image table.s   
  
        if (videoId == null) {   
        return null;   
        }   
        cursor.close();   
        long videoIdLong = Long.parseLong(videoId);   
        bitmap = MediaStore.Video.Thumbnails.getThumbnail(cr, videoIdLong,Images.Thumbnails.MICRO_KIND, options);   
  
        return bitmap;   
        }   
      

public static Bitmap getVideoThumbnail(ContentResolver cr, Uri uri) {
                Bitmap bitmap = null;
                BitmapFactory.Options options = new BitmapFactory.Options();
                options.inDither = false;
                options.inPreferredConfig = Bitmap.Config.ARGB_8888;
                Cursor cursor = cr.query(uri,new String[] { MediaStore.Video.Media._ID }, null, null, null);
       
                if (cursor == null || cursor.getCount() == 0) {
                    return null;
                }
                cursor.moveToFirst();
                String videoId = cursor.getString(cursor.getColumnIndex(MediaStore.Video.Media._ID));  //image id in image table.s

                if (videoId == null) {
                return null;
                }
                cursor.close();
                long videoIdLong = Long.parseLong(videoId);
                bitmap = MediaStore.Video.Thumbnails.getThumbnail(cr, videoIdLong,Images.Thumbnails.MICRO_KIND, options);

                return bitmap;
                }
          

fl 发表于 2011-8-30 10:22 | 显示全部楼层
推荐链接
3G培训就业月薪平均7K+,不3K就业不花一分钱!
见证又一个准百万富翁的诞生!

20-30万急聘多名天才Java/MTA软件工程师

您需要登录后才可以回帖 登录 | 成为会员

本版积分规则

QQ|手机版|小黑屋|网站帮助|职业IT人-IT人生活圈 ( 粤ICP备12053935号-1 )|网站地图
本站文章版权归原发布者及原出处所有。内容为作者个人观点,并不代表本站赞同其观点和对其真实性负责,本站只提供参考并不构成任何投资及应用建议。本站是信息平台,网站上部分文章为转载,并不用于任何商业目的,我们已经尽可能的对作者和来源进行了通告,但是能力有限或疏忽造成漏登,请及时联系我们,我们将根据著作权人的要求立即更正或者删除有关内容。

GMT+8, 2024-5-6 19:30 , Processed in 0.152294 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表