Android之Bitmap專題

博客地址

1.從資源文件中獲取

 Bitmap rawBitmap =BitmapFactory.decodeResource(getResources(),R.drawable.img1);

2.從SD卡中獲取

(方法1)

String SDCarePath=Environment.getExternalStorageDirectory().toString();
String filePath=SDCarePath+"/"+"haha.jpg";
Bitmap rawBitmap1 = BitmapFactory.decodeFile(filePath, null);  

(方法2)

InputStream inputStream=getBitmapInputStreamFromSDCard("haha.jpg"); 
 Bitmap rawBitmap2 = BitmapFactory.decodeStream(inputStream);

3.設置圖片的圓角,返回設置后的BitMap

public Bitmap toRoundCorner(Bitmap bitmap, int pixels) {
Bitmap roundCornerBitmap = Bitmap.createBitmap(bitmap.getWidth(), bitmap.getHeight(), Config.ARGB_8888);
Canvas canvas = new Canvas(roundCornerBitmap);
int color = 0xff424242;
Paint paint = new Paint();
paint.setColor(color);
paint.setAntiAlias(true);// 防止鋸齒
Rect rect = new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight());
RectF rectF = new RectF(rect);
float roundPx = pixels;
// 相當于清屏
canvas.drawARGB(0, 0, 0, 0);
// 先畫了一個帶圓角的矩形
canvas.drawRoundRect(rectF, roundPx, roundPx, paint);
paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));
// 再把原來的bitmap畫到現(xiàn)在的bitmap?。?!注意這個理解
canvas.drawBitmap(bitmap, rect, rect, paint);
return roundCornerBitmap;
}

編譯器不好用,算了,看博客。。。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容