Bitmap对角线进行旋转(右上左下):
public Bitmap convert(Bitmap mBitmap, int width, int height) { int w = mBitmap.getWidth(); int h = mBitmap.getHeight(); Bitmap newBitmap = Bitmap.createBitmap(width, height, Config.ARGB_8888); Canvas mCanvas = new Canvas(newBitmap); Matrix matrix = new Matrix(); matrix.postScale(1, -1); matrix.postRotate(-90); Bitmap mBitmap2 = Bitmap.createBitmap(mBitmap, 0, 0, w, h, matrix, true); mCanvas.drawBitmap(mBitmap2, new Rect(0, 0, mBitmap2.getWidth(), mBitmap2.getHeight()), new Rect(0, 0, width, height), null); return newBitmap; }
? 在Bitmap上画图:
? ??
public Bitmap drawRect(Bitmap bitmap) { Paint paint = new Paint(); paint.setColor(Color.RED); paint.setStyle(Style.STROKE); Bitmap newBitmap = Bitmap.createBitmap(bitmap.getWidth(), bitmap.getHeight(), Config.ARGB_8888); Canvas mCanvas = new Canvas(newBitmap); mCanvas.drawBitmap(bitmap, 0, 0, null); mCanvas.drawRect(0, 0, 20, 20, paint); mCanvas.save(Canvas.ALL_SAVE_FLAG); mCanvas.restore(); return newBitmap; }
?