楼上理解错了吧,把bmp说成bm了.由于老师Canvas canvas = new Canvas(bmp);而bmp是根据bm的宽高创建的一个'空图片',所以canvas就是包含了bmp信息的空画布,然后设置一个包含相关图片效果的paint画笔.canvas.drawBitmap(bm,0,0,paint)代表从bm这个BitMap的基础上通过带有图片效果的paint进行新的BitMap的绘制,而这个绘制出的新的BitMap就赋给了canvas构造方法的参数,也就是bmp.经过这么一系列的处理,bmp就变成了带有图片效果的BitMap了,然后将它返回即可.不明白的话可以进行回复.