我想绘制在画布中缩放的位图(基于位图和视图大小)。问题是,如果我在绘制位图之前缩放画布:
canvas.scale(1.5f,1.5f);
canvas.drawBitmap(mBitmap, 0, 0, paint);
这是结果:
但是,如果不是缩放画布,而是缩放位图:
Bitmap scaled = Bitmap.createScaledBitmap(
mBitmap, bitmapWidth, bitmapHeight,
true);
canvas.drawBitmap(scaledBitmap, 0, 0, paint);
结果要好得多:
问题是位图非常大,并且在内存中同时保存原始位图和缩放位图可能会有问题。
每次位图或视图边界发生变化时,有没有什么方法可以在不创建缩放位图的情况下获得第二个结果?