このメソッドを使用してmatrix.rotate(deg, fx,fy)
画像を回転しています。
画像にはalpha
チャンネルがあり、右隅に視覚的なものしかありません。matrix
キャンバスを回転させ、それを使って新しい画像を作成し、視覚的な部分だけを回転させたいと思います。
現時点では、画像は回転しますが、目的の周りには回転しませんaxis
。常にオブジェクトの元の幅を中心に回転します。
私が使用するコードは次のとおりです。
Matrix matrix = new Matrix();
matrix.setRotate(rotation, xPivot, yPivot);
Bitmap pic1a = Bitmap.createBitmap(pic1, 0, 0, pic1.getWidth(), pic1.getHeight(), matrix, true);
これにより、画像は正しく回転しますが、元のキャンバスの同じ場所内でのみ回転しているように見えます。私が欲しいのは、画像が回転して(xPivot、yPivot)、ディスプレイの中央の位置になる点です。