我无法想象如何在位图上绘制(借助画布)才能使结果不依赖设备密度。
我在
以下是绘制代码:
ImageView iv = (ImageView)findViewById(R.id.container);
Bitmap result = BitmapFactory.decodeResource(getResources(), R.drawable.big_picture).copy(Bitmap.Config.ARGB_8888, true);
Canvas canvas = new Canvas(result);
canvas.drawBitmap(BitmapFactory.decodeResource(getResources(), R.drawable.small_picture), actualX, actualY, null);
iv.setImageBitmap(result);
我在
Bitmap result
中加载了一张big_picture,并想在其上绘制一张small_picture,但需要指定位置。如果我设置actualX和actualY,那么在同样密度的设备上就可以正常运行。但是,不同密度的设备会“缩放”画布。
有趣的是,只有small_picture被“缩放”,超出了屏幕范围,而其后面的big_picture却可以在任何密度的屏幕上完美适配屏幕。 为什么会这样?如何在big_picture与density无关的情况下绘制small_picture? 谢谢!