首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >画布上的可绘制图像

画布上的可绘制图像
EN

Stack Overflow用户
提问于 2011-03-03 11:49:11
回答 7查看 179.6K关注 0票数 109

如何将图像放到画布上以便在该图像上绘制?

EN

回答 7

Stack Overflow用户

发布于 2014-04-08 16:36:16

在画布上绘制可绘制图形的好方法不是自己解码,而是让系统自己解码:

代码语言:javascript
复制
Drawable d = getResources().getDrawable(R.drawable.foobar, null);
d.setBounds(left, top, right, bottom);
d.draw(canvas);

这将适用于所有类型的绘图,而不仅仅是位图。这也意味着,如果尺寸发生变化,您可以再次使用相同的可绘制图形。

票数 198
EN

Stack Overflow用户

发布于 2011-03-03 12:00:46

您需要将图像加载为位图:

代码语言:javascript
复制
 Resources res = getResources();
 Bitmap bitmap = BitmapFactory.decodeResource(res, R.drawable.your_image);

然后将位图设置为可变的,并在其上创建一个画布:

代码语言:javascript
复制
Canvas canvas = new Canvas(bitmap.copy(Bitmap.Config.ARGB_8888, true));

然后,您可以在画布上绘制。

票数 39
EN

Stack Overflow用户

发布于 2015-03-30 02:13:36

你也可以用这种方式。它将改变你的大画布尺寸:

代码语言:javascript
复制
Resources res = getResources();
Bitmap bitmap = BitmapFactory.decodeResource(res, yourDrawable);
yourCanvas.drawBitmap(bitmap, 0, 0, yourPaint);
票数 15
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5176441

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档