Androidの画像にフリーハンドのトリミングを実装しています。タッチを使用して画像に任意の形状を描画し、パス上のすべてのポイントを配列リストに収集できます。しかし、任意の形状内の画像の一部を抽出することはできません。
かなり検索しましたが、適切な答えを見つけることができませんでした。これの実例を持っている団体はありますか?
編集:ビットマップで以下のコードを使用して、任意の形状を作成できます。
@Override
protected void onDraw(Canvas canvas) {
canvas.drawBitmap(scaledBitmap, 0, 0,null);
path.reset();
boolean firstTouchPoint = true;
for (int i = 0; i < lastPath.size(); i += 2) {
Point point = lastPath.get(i);
if (firstTouchPoint) {
firstTouchPoint = false;
path.moveTo(point.fXPosition, point.fYPosition);
} else if (i < lastPath.size() - 1) {
Point next = lastPath.get(i + 1);
path.quadTo(point.fXPosition, point.fYPosition, next.fXPosition, next.fYPosition);
} else {
path.lineTo(point.fXPosition, point.fYPosition);
}
}
canvas.drawPath(path, paint);
}
しかし、このパス内のビットマップ領域を抽出できません。