当我将位图图像设置为带有x和y坐标的画布时。将位图左侧的位置设置为该位置。如何在该坐标中居中位图。我想将图像的中心点设置为该协调。我在那里在android中做任何方法?
这是我在画布中绘制位图的方法
canvas.drawBitmap(bmp, point_x.get(i), point_y.get(i), null);
答案 0 :(得分:0)
使用BitmapFactory.Options
获取位图的尺寸:
BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
BitmapFactory.decodeResource(getResources(), R.id.bmp, options);
int height = options.outHeight;
int width = options.outWidth;
我在这里使用了来自资源的位图作为示例。你可以在这里找到其他的可能性: http://developer.android.com/reference/android/graphics/BitmapFactory.html
然后使用这些尺寸计算左上角的位置:
在加载位图之前,还要将JustDecodeBounds设置为false。
options.inJustDecodeBounds = false;
canvas.drawBitmap(BitmapFactory.decodeResource(getResources(), R.id.bmp, options), point_x.get(i) - width/2, point_y.get(i) - height/2, null);