如何镜像图像文件? (2.2+)

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

我怎样才能做到这一点与Froyo和以上?

Solutions Collecting From Web of "如何镜像图像文件? (2.2+)"

通过-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); 

如果您不想创build第二个位图,则可以使用canvas.scale执行相同的canvas.scale

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

如果你使用ImageView,你可以使用setScaleX:

  public void mirroredBubble() { bubble_rl.setScaleX(-1.0f); }