Android学习笔记之基础绘图类

Android中常用的基础绘图类有以下三种:

1>Bitmap类,表示一张位图,可以自由创建或者读取文件,功能类似于Java中的BufferedImage,其中有很多相似的方法,包括读取一张图片,创建或者保存等。

2>Canvas类,表示画布,可以通过设置画布的属性,画出所需要的东西。其中,Canvas类和Bitmap类在某些方法上具有相似的功能,例如创建一个固定大小的图像等。

3>Paint类,顾名思义,指画画的意思,代表画笔,用来描述绘制风格,使用此类时,可以通过该类提供的构造方法创建对象。

通常,在绘制某个图像时,需要重写View中的onDraw()方法,可以通过其中的某些方法绘制得到2D图形。

Android的中绘制简单的2D图形常用的一些方法如下:

1>Canvas类常用方法

    drawCircle(135,53,4,paint);//绘制以(135,53)为圆心的,半径为4的圆
    drawLine(125,20,135,35,paint);//绘制线,在(125,20)和(135,35)两个中间开始绘制
    drawRect(110,75,200,150,paint);//绘制左上角为(110,75),右下角为(200,150)的矩形
    drawRoundRect(rectF_body,10,10,paint);//绘制圆角矩形
    drawPoint(25,54,paint);//在(25,54)点绘制一个点
    drawText("Android",45,260,paint);//添加文字
2>Paint类常用方法

    setAntiAlias(true);//使用抗锯齿功能,即柔化边缘
    setColor(Color.WHITE);//设置画笔为白色
    setTextSize(50);//设置文字大小
    setColor(Color.GRAY);//设置文字颜色
    setAlpha(50);//设置透明度

3>Bitmap类常用方法

    bitmap = Bitmap.createBitmap(bitmap, 84, 170, 600, 350);//以(84,170)点开始创建一个宽600,高350像素的Bitmap对象
    bitmap = Bitmap.createBitmap(600, 350, Bitmap.Config config);//根据制定数据配置创建新的对象
    bitmap.getWidth();
    bitmap.getHeight();

其中Bitmap类不能实例化,因此只能借助BitmapFactory类获取文件资源。

读取Bitmap方法有两种:

1>以文件方式读取,需要获取图像路径

    Bitmap bitmap = BitmapFactory.decodeFile(String PathName);
    Bitmap bitmap = BitmapFactory.decodeResource(this.getContext().getResources(),R.drawable.XX);
    Bitmap bitmap = BitmapFactory.decodeResource(this.getResources(),int[] images);

2>以文件流的形式读取
    FileInputStream fileInputStream  = new FileInputStream("图像路径+PictureName.jpg");
    Bitmap bitmap = BitmapFactory.decodeStream(fileInputStream);

BitmapFactory类中的常用方法:
    decodeByteArray(byte[] data,int offset,int length);//根据指定数据文件解码Bitmap
    decodeFile(String pathName);//根据指定路径创建Bitmap
    decodeFileDescriptor(FileDescriptor fd);//根据指定的文件说明符解码Bitmap
    decodeResource(Resources res,int id);//根据指定的资源创建Bitmap
    decodeStream(InputStream is);//根据指定的输入流解码Bitmap





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值