国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

drawable以及Bitmap的基本操作

2019-11-15 01:04:31
字體:
來源:轉載
供稿:網友
drawable以及Bitmap的基本操作

一.drawable 圖形對象,可以轉載常用格式的圖像,可能是(位圖)Bitmapdrawable,或者shapedrawable(圖形),還可能是多種其他圖片格式GIF,PNG,JEPG

二.Bitmap 就是位圖,用于圖片的處理

三.Canvas 意為畫布,就是繪畫的目標區域,用來管理Bitmp或者path路徑

下面就是講到drawable轉換成Bitmap的方法

我所知有兩種方法(兩種方法誰好誰壞,得看情況)

(1)常見的一種方法就是創建個Bitmap出來,再用畫布綁定這個位圖,將drawable繪到Bitmap上(此方法用于此時的drawable對象不是bitmap圖像時)

Bitmap bitmap=Bitmap.createBitmap(size, size, Bitmap.Config.ARGB_8888);//創建一個size寬size高的一個位圖Canvas canvas=new Canvas(bitmap);//將畫布綁定到該位圖上,為接下來的drawable繪畫做準備drawable.setBounds(0,0,size,size);//drawable設置大小與位圖相同drawable.draw(canvas);//將drawable通過畫布畫到Bitmap上去

(2)另外一種方法就是直接獲取Bitmap(bitmapdrawable)

Bitmap icon=BitmapFactory.decodeResource(context.getResources(),R.drawable.icon_resource)//將drawable對象中的icon_resource圖像轉換成位圖文件icon

或者

BitmapDrawable bd = (BitmapDrawable) drawable;//先轉換成Bitdrawable         bitmap = bd.getBitmap();//再通過getBitmap()獲取到Bitmap

另外關于drawmap()方法的說明

drawBitmap()方法:繪制圖像,該方法用于在畫布上繪制圖像,是通過Bitmap對象來實現,當要引入圖片資源時,我們可以采取該方法。

drawBitmap (Bitmap bitmap, float left, float top, Paint paint)

參數說明

bitmap:Bitmap對象,代表了圖像資源。

left:圖像顯示的左邊位置。

top:圖像顯示的上邊位置。

paint:繪制時所使用的畫筆。

在上述方法1中就是采用了該方法。

public class MyTile extends View{public Bitmap[] bitmap1;        PRivate static final int size=12;public MyTile(Context context, AttributeSet attrs){super(context, attrs);Get_Bitmap();// TODO 自動生成的構造函數存根}/* (非 javadoc) * @see android.view.View#onDraw(android.graphics.Canvas) */public void Get_Bitmap(){bitmap1=new Bitmap[1];Bitmap bitmap=Bitmap.createBitmap(size, size, Config.ARGB_8888);//創建一個size正方形大小的新位圖                Drawable   drawable=getResources().getDrawable                (R.drawable.greenstar);//獲取drawable對象Canvas canvas=new Canvas(bitmap);//Bitmap綁定畫布drawable.setBounds(0,0,size,size);//設置drawable對象大小size                drawable.draw(canvas);//最后將drawable畫到Bitmap的canvas上去                  bitmap1[0]=bitmap;}protected void onDraw(Canvas canvas){// TODO 自動生成的方法存根super.onDraw(canvas);Paint paint=new Paint();paint.setColor(Color.BLACK);        canvas.drawBitmap(bitmap1[0], 200, 200, paint);}}  

  

上述方法可以裁定圖片的大小尺寸,在自定義位圖大小的情況下通常采用這種方法


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 岳池县| 衡阳县| 高雄市| 商丘市| 三门县| 磴口县| 克拉玛依市| 溆浦县| 唐山市| 曲阜市| 珲春市| 大方县| 佛坪县| 保德县| 平昌县| 平利县| 祥云县| 辽阳市| 文山县| 秦安县| 石林| 淳化县| 镇远县| 湾仔区| 平湖市| 梁平县| 舒兰市| 高邮市| 永宁县| 兴和县| 罗山县| 湟中县| 扬州市| 南汇区| 屏南县| 阳城县| 达拉特旗| 文登市| 改则县| 临夏县| 榆中县|