Нарисуйте растровое изображение на холсте с пользовательской формой
Я хочу нарисовать изображение со следующей формой на холсте:
Черный должен быть заменен моим изображением. Я сейчас рисую изображение целиком. Я просто не знаю, как я могу получить такую форму?
canvas.drawBitmap(header,0,0,mPaint);
Кто-нибудь может мне помочь?
1 ответ
Решение
Благодаря pskink я получил это:
int width = this.getMeasuredWidth();
int height = this.getMeasuredHeight();
BitmapShader shader;
shader = new BitmapShader(header, Shader.TileMode.CLAMP, Shader.TileMode.CLAMP);
mPaint.setShader(shader);
Path path = new Path();
path.moveTo(0,0);
path.lineTo(0,height/2);
path.lineTo(width,height/4);
path.lineTo(width,0);
canvas.drawPath(path,mPaint);
Просто используйте шейдер и путь, чтобы сделать работу.