最近做的图片处理比较多,总结一下
1.Bitmap和Drawable转换
public static Bitmap drawableToBitmap(Drawable drawable) {
int width = drawable.getIntrinsicWidth();
int height = drawable.getIntrinsicHeight();
Bitmap bitmap = Bitmap.createBitmap(width, height, drawable.getOpacity() != PixelFormat.OPAQUE ? Bitmap.Config.ARGB_8888 : Bitmap.Config.RGB_565);
Canvas canvas = new Canvas(bitmap);
drawable.setBounds(0, 0, width, height);
drawable.draw(canvas);
return bitmap;
}
public static Drawable bitmapToDrawble(Bitmap bitmap,Context mcontext){
Drawable drawable = new BitmapDrawable(mcontext.getResources(), bitmap);
return drawable;
}
2.获取图片创建的时间
File file = new File("");
file.lastModified();
public static long getImgCreateTime(Context context, String path) {
long createTime = -1;
Uri mImageUri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI;
ContentResolver mContentResolver = context.getContentResolver();
Cursor mCursor = mContentResolver.query(mImageUri, new String[]{MediaStore.Images.Media.DATE_TAKEN},
MediaStore.Images.Media.DATA + "=?",
new String[]{path}, MediaStore.Images.Media.DATE_TAKEN);
if (mCursor == null) {
return -1;
}
while (mCursor.moveToNext()) {
String str = mCursor.getString(mCursor
.getColumnIndex(MediaStore.Images.Media.DATE_TAKEN));
createTime = Long.parseLong(str);
}
return createTime ;
}