2012-02-14 32 views
2

キャンバス上に描画するために画像を回転、拡大縮小、平行移動しようとしています。しかし、注文が面倒であることが証明されており、すべてが正しく整列するのに問題があります。キャンバスでビットマップを回転、拡大縮小、および変換する

Matrix matrix = new Matrix(); 
//matrix.postRotate(90f); 
matrix.postScale(scaleFactor, scaleFactor); 
matrix.postTranslate(screenCoords.x - scaleWidth/2, screenCoords.y 
    - scaleHeight/2); 

c.drawBitmap(blackJackBM, matrix, this.mPaint); 

スケーリング、このインスタンスに正しく作品を翻訳、しかし、コメント解除回転コードは、それが描画されるべき場所の左側に、この場合には、画像がオフセットされるようになります。何か案は?

答えて

3

postRotate(float)は、左上の点から行列を回転させます。代わりにpostRotate(float、centerX、centerY)を使用してください。

関連する問題