canvas教程

Android中canvas画图的简单应用

字号+ 作者:H5之家 来源:H5之家 2015-11-23 19:32 我要评论( )

在最近的Android的实验中用到了绘制图形,于是简单的学习了一下利用canvas进行2D图形的简单绘制,一下是个人的总结,以便日后翻看。其中,有三个重

Android中canvas画图的简单应用

Android中canvas画图的简单应用,有需要的朋友可以参考下。


在最近的Android的实验中用到了绘制图形,于是简单的学习了一下利用canvas进行2D图形的简单绘制,一下是个人的总结,以便日后翻看。

其中,有三个重要的东西:

Bitmap、Canvas、Paint

以实际生活中的绘画过程进行类比的话,更容易理解:

1.Bitmap:相当于画布

其创建有很多种,这里只说一种很简单的方式:

Bitmap baseBitmap = Bitmap.createBitmap(x, y, Config.ARGB_8888);

x,y参数分别制订了该画布的大小。

2.Canvas:相当于画家

Canvas canvas = new Canvas(baseBitmap);

画家手里需要有画布

3.paint:相当于画笔

画笔可以设置粗细,颜色等属性

Paint paint = new Paint();

paint.setStrokeWidth(5);

paint.setColor(Color.RED);

4.最后是作画

canvas.drawXXXX()进行绘制,其提供了各种形状,图片的绘制。

下面是图片的简单绘制方法:

InputStream is = getResources().openRawResource(R.drawable.map);
Bitmap mBitmap = BitmapFactory.decodeStream(is);
Paint mPaint = new Paint();
canvas.drawBitmap(mBitmap, 0, 0, mPaint);

以下是实例代码:

//获取imageview

imView1 =(ImageView) findViewById(R.id.select_picture1);

//按照imageview的大小创建画布

Bitmap baseBitmap = Bitmap.createBitmap(imView1.getWidth(), imView1.getHeight(), Config.ARGB_8888);

//将背景图片绘制上去

Canvas canvas = new Canvas(baseBitmap);
canvas.drawColor(Color.WHITE);
InputStream is = getResources().openRawResource(R.drawable.map);

Bitmap mBitmap = BitmapFactory.decodeStream(is);
Paint mPaint = new Paint();
canvas.drawBitmap(mBitmap, 0, 0, mPaint);

//将定位图标绘制上去
Paint paint = new Paint();
paint.setStrokeWidth(5);
paint.setColor(Color.RED);
InputStream is1 = getResources().openRawResource(R.drawable.mylocation);
Bitmap mBitmap1 = BitmapFactory.decodeStream(is1);
canvas.drawBitmap(mBitmap1, x, y, paint);
// 把图片展示到ImageView中
imView1.setImageBitmap(baseBitmap);

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
网友点评