使用Canvas绘制位图的片段

时间:2011-04-04 18:31:25

标签: java android canvas

我有一张图片(资源),我想在Android中使用我的应用程序。但我只想绘制它的特定部分。我最初的想法是将其转换为位图并指定需要绘制哪些像素以及在哪里。我试过canvas.drawBitmap(bitmap,src,dst,null);但它似乎没有用。也许我没有正确使用它。

只是想知道它是否可行,我可以用它来实现这个目标?

谢谢!

src = new Rect(20,40,20,40);
dst = new Rect(20,40,20,40);

canvas.drawBitmap(background, offset, 0, null);
canvas.drawBitmap(bitmap, src, dst, null);

我希望看到src坐标处指定的区域被绘制到dst坐标指定的区域,但除了背景之外我什么都看不到。

2 个答案:

答案 0 :(得分:1)

您可能希望使用支持Alpha通道的格式或加载位图以及Alpha通道的灰度图像,从两者构造图像并绘制它。试试Java的Graphics2D对象。 Here这篇文章可以帮助你入门。

答案 1 :(得分:1)

dst应该是你想在画布上绘制图像的地方,而src应该是你想要裁剪的矩形。