Canvas的drawBitmap有四个重载方法,我们常用的有如下两个:
(1) public void drawBitmap(Bitmap bitmap, float left, float top, Paint paint)
第一个参数为要绘制的bitmap对象,第二个参数为图片左上角的x坐标值,第三个参数为图片左上角的y坐标的值,第三个参数为Paint对象(可以为null)。
(2) public void drawBitmap(Bitmap bitmap, Rect src, RectF dst,Paint paint)
第一个参数为要绘制的bitmap对象,第二个参数为要绘制的Bitmap对象的矩形区域,第三个参数为要将bitmap绘制在屏幕的什么地方,第四个参数为Paint对象(可以为null)。
Rect四个参数的构造方法:
这四个参数指明了画布的位置,这四个参数代表的意思分别是:
left : 矩形左边的X坐标 150 ------>图片中的A点
top: 矩形顶部的Y坐标 75 ------>图片中的B点
right : 矩形右边的X坐标 260 ------>图片中的C点
bottom: 矩形底部的Y坐标 120 ------>图片中的D点
不知道大家到这里能不能马上就能想象出这个矩形应该在屏幕的什么位置,在图中,我分别以 A、B 、C、D代表这四个点 ,图中红色部分就是我们要画的矩形。其实更好的理解就是,前两个参数指定了矩形左上角的x轴和y轴坐标。
ps:canvas.clipRect(20, 20, 260, 260) 这个裁剪画布的方法的参数含义与Rect构造方法四个参数含义相同。