ズームインして画像に何かを描画できるアプリケーションを作成しようとしています。次のリンクを使用して、画像の細かい ズーム機能を実行しているズーム可能な画像ビューを作成します
今の問題は、ズームアウトしたときにキャンバスに描いているものを画像サイズに拡大縮小して変換する方法がわからないことです。以下は onDraw() 関数です。私はリストに追加されたタッチポイントを記録しました。私のビューのこの onDraw() 関数では、それらのポイントを取得していますが、これらのポイントは screen に関連しています。画像操作に応じて変換およびスケーリングする必要があります(画像のズームイン/ズームアウトの場合)。
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
if(mMarkers!=null)
{
for(Marker m : mMarkers) {
// draw the marker
Log.v("IP","position"+ m.x+" "+ m.y);
Paint paint=new Paint();
paint.setARGB(255, 2, 255, 2);
canvas.drawText("O", m.x, m.y, paint);
if(x!=-1){
Log.v("IP","LINE"+x+" " + y+ " "+ m.x+" "+ m.y);
canvas.drawLine(x, y,m.x, m.y, paint);
}
x=m.x;
y=m.y;
}
x=y=-1;
}
}