zoukankan      html  css  js  c++  java
  • ndroid获得Bitmap的三种方法(转载)

    一、        使用BitmapFactory解析图片

          

    // --> 使用BitmapFactory解析图片

               public void myUseBitmapFactory(Canvas canvas){

               // 定义画笔

                  Paint paint = new Paint();

               // 获取资源流

                  Resources rec = getResources();

                  InputStream in = rec.openRawResource(R.drawable.haha);

               // 设置图片

                  Bitmap bitmap =BitmapFactory.decodeStream(in);

               // 绘制图片

                  canvas.drawBitmap(bitmap, 0,20, paint);         

               }

    二、        使用BitmapDrawable解析图片

           // --> 使用BitmapDrawable解析图片

               public void myUseBitmapDrawable(Canvas canvas){

               // 定义画笔

                  Paint paint = new Paint();

               // 获得资源

                  Resources rec = getResources();

               // BitmapDrawable

                  BitmapDrawable bitmapDrawable = (BitmapDrawable) rec.getDrawable(R.drawable.haha);

               // 得到Bitmap

                  Bitmap bitmap = bitmapDrawable.getBitmap();

               // 在画板上绘制图片

                  canvas.drawBitmap(bitmap, 20,120,paint);

               }

    三、        使用InputStream和BitmapDrawable绘制

           // --> 使用InputStream和BitmapDrawable解析图片

               public void myUseInputStreamandBitmapDrawable(Canvas canvas){

               // 定义画笔

                  Paint paint = new Paint();

               // 获得资源

                  Resources rec = getResources();

               // InputStream得到资源流

                  InputStream in = rec.openRawResource(R.drawable.haha);

               // BitmapDrawable 解析数据流

                  BitmapDrawable bitmapDrawable =  new BitmapDrawable(in);

               // 得到图片

                  Bitmap bitmap = bitmapDrawable.getBitmap();

               // 绘制图片

                  canvas.drawBitmap(bitmap, 100, 100,paint);

               }

  • 相关阅读:
    Sublime Text 试玩日记
    Makefile 学习
    小书匠使用手册
    较完整的解决Linux zip 压缩包中文我乱码问题
    彻底解决Android模拟器中文短信乱码问题
    博客变更
    关于如何学习一个框架的经验总结
    [JavaScript] this、call和apply详解
    类与类之间关系,用C#和JavaScript体现
    [Node.js] require背后的故事
  • 原文地址:https://www.cnblogs.com/draem0507/p/3131871.html
Copyright © 2011-2022 走看看