透明な背景を持つPNGを読み込もうとしています。URIから読み込んだ画像に黒い背景があります
mImageCursor = getContentResolver().query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
ImageThumbnailAdapter.IMAGE_PROJECTION, null, null,
MediaStore.Images.ImageColumns.DISPLAY_NAME);
プロジェクション:ビューで
private static Bitmap loadThumbnail(ContentResolver cr, Uri uri) {
return MediaStore.Images.Thumbnails.getThumbnail(
cr, ContentUris.parseId(uri), MediaStore.Images.Thumbnails.MINI_KIND, sBitmapOptions);
}
設定:ロード用
public static final int IMAGE_ID_COLUMN = 0;
public static final int IMAGE_NAME_COLUMN = 1;
方法
Bitmap bitmapOld = loadThumbnail(mArgs.mContentResolver, mArgs.mUri);
ByteArrayOutputStream out = new ByteArrayOutputStream();
bitmapOld.compress(Bitmap.CompressFormat.PNG, 100, out );
final Bitmap bitmap = BitmapFactory.decodeStream(new ByteArrayInputStream(out.toByteArray()));
Bitmap mutableBitmap = bitmapOld.copy(Bitmap.Config.ARGB_8888, true);
final Canvas canvas = new Canvas(mutableBitmap);
// Canvas c = new Canvas(bitmap);
canvas.drawColor(0, PorterDuff.Mode.CLEAR);
//This drawabl is coming black in Background.
final Bitmap bmpfinal = mutableBitmap;
あなたはそれがローカルのシステムに保存されているようなウェブのURIか簡単なことを教えていただけますか? –
ローカルファイルシステム。 –
このリンクを一度しか通過しないhttps://github.com/hiteshsahu/AwesomeAndroid-Gallery –