如何将Canvas 上的内容转换为一张Bitmap-Android开发问答
3个回答
展开全部
如果是要将一个Bitmap绘制到界面上,那就直接用Canvas#drawBitmap()方法绘制即可
如果是要从一个已有的canvas获取bitmap对象,可尝试下面的办法:
1、用Bitmap.createBitmap()方法,创建一个与目标canvas大小相同的空白Bitmap对象
2、用Canvas#setBitmap()方法,将创建的bitmap设置为Canvas对象的Bitmap。之后所有对目标canvas的绘制操作都会绘制在这个bitmap上,相当于将canvas中的内容转换为了一个单独的bitmap
另外,如果创建canvas对象的时候调用的是canvas(Bitmap bitmap)方法的话,那么创建canvas的时候就应该已经有现存的bitmap对象了,这种情况应该不需要转换
如果是要从一个已有的canvas获取bitmap对象,可尝试下面的办法:
1、用Bitmap.createBitmap()方法,创建一个与目标canvas大小相同的空白Bitmap对象
2、用Canvas#setBitmap()方法,将创建的bitmap设置为Canvas对象的Bitmap。之后所有对目标canvas的绘制操作都会绘制在这个bitmap上,相当于将canvas中的内容转换为了一个单独的bitmap
另外,如果创建canvas对象的时候调用的是canvas(Bitmap bitmap)方法的话,那么创建canvas的时候就应该已经有现存的bitmap对象了,这种情况应该不需要转换
展开全部
Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(bitmap);
然后在canvas上面进行绘制就行了 绘制的东西就会显示到bitmap上
Canvas canvas = new Canvas(bitmap);
然后在canvas上面进行绘制就行了 绘制的东西就会显示到bitmap上
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
上面的API就是设置你要画图时保存图的BITMAP,你画的东西就在BITMAP中。这个bitmap可以通过Bitmap.createBitmap(width, height, config)来新建,而不是你从资源里加载的。
先setDrawingCacheEnabled(true);
你要显示的都显示出来后buildDrawingCache();
最后Bitmap b=getDrawingCache();
先setDrawingCacheEnabled(true);
你要显示的都显示出来后buildDrawingCache();
最后Bitmap b=getDrawingCache();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询