Android 如何镜像映像文件?(2.2+;)

Android 如何镜像映像文件?(2.2+;),android,image,image-manipulation,Android,Image,Image Manipulation,我有一个PNG文件,我想用于覆盖-但是,该文件必须镜像(并旋转180°),但为了节省空间,我不想将镜像文件放置在apk中,而是以编程方式执行此操作 使用Froyo和更高版本如何执行此操作?按-1.0缩放会导致图像翻转。假设bmp是要镜像的位图(此处位于x轴上),则可以执行以下操作: Matrix matrix = new Matrix(); matrix.preScale(-1.0f, 1.0f); Bitmap mirroredBitmap = Bitmap.createBitmap(bm

我有一个PNG文件,我想用于覆盖-但是,该文件必须镜像(并旋转180°),但为了节省空间,我不想将镜像文件放置在apk中,而是以编程方式执行此操作


使用Froyo和更高版本如何执行此操作?

按-1.0缩放会导致图像翻转。假设
bmp
是要镜像的位图(此处位于x轴上),则可以执行以下操作:

Matrix matrix = new Matrix(); 
matrix.preScale(-1.0f, 1.0f); 
Bitmap mirroredBitmap = Bitmap.createBitmap(bmp, 0, 0, bmp.width(), bmp.height(), matrix, false);
如果不想创建第二个位图,可以使用
canvas.scale

canvas.save();
canvas.scale(-1.0f, 1.0f);
canvas.drawBitmap(bitmap, ...); // The bitmap is flipped
canvas.restore();

只需使用View.setScaleX()即可

比如说

 public void mirrorView(View v){
    v.setScaleX(-1.0f);
}

这确实是最好的选择