如何在Android中将位图的非矩形部分(例如椭圆形)复制到画布上?
考虑如何将位图的矩形部分复制到画布上:canvas.DrawBitmap(src,src_rect,dest_rect,paint)
。遗憾的是,对于非矩形区域没有相应的方法。
有四种方法可供选择(也许您知道第五种方法?):
将要复制的矩形边界拷贝到一个中间位图中,并将不需要复制的像素设置为透明,然后绘制该位图。
创建一个掩码位图 - 有没有用单独的掩码进行绘制的方法?
使用
BitmapShader
和drawArc()/drawCircle()
; 然而,我无法弄清如何使矩阵正确对齐;你会如何初始化此操作的矩阵?使用非常复杂的剪辑区域
其中,我最想使用的是选项3;然而,我无法弄清如何实现;你能帮忙吗?