Es gibt viele Möglichkeiten, Bilder in Android zu spiegeln. Ich habe es heute gelernt.
Die beiden Methoden sind wie folgt:
Der Code lautet wie folgt:
//Methode 1
Matrix matrix = new Matrix(); matrix.postScale(leftOrRight, 1, bmpW/2, bmpH/2);//前两个是xy变换,后两个是对称轴中心点 matrix.postTranslate(x, y); canvas.drawBitmap(bmpLuffy[0], matrix, paint);
//Methode 2
// canvas.save(); // canvas.scale(-1, 1, x + bmpLuffy[0].getWidth() / 2, y + bmpLuffy[0].getHeight() / 2); // canvas.drawBitmap(bmpLuffy[0], x, y, paint); // canvas.restore();
Methode 1, mit Matrix (3x3)-Matrix :
1. Verwenden Sie zunächst die postScale-Methode, um das Bild mit dem Punkt (bmpW/2, bmpH/2) als Mittelpunkt und x=bmpW/2 als zu spiegeln die Symmetrieachse;
2. Verwenden Sie postTranslate, um das Bild auf die (x, y)-Koordinaten zu verschieben
Methode 2, spiegeln Sie die Leinwand (weggelassen)
Achten Sie auf die folgenden Probleme :
Für bmpW und bmpH muss die Breite und Höhe des verwendeten Bildes mithilfe der Bilddaten bmp.getWidth() und bmp.getHeight() ermittelt werden.
Andernfalls können Sie die auf dem PC angezeigte Größe nicht verwenden Es kann zu einer Fehlausrichtung kommen!
Das obige ist der detaillierte Inhalt vonEinführung in verschiedene Methoden der Bildspiegelung in der Android-Entwicklung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!