我正在使用图像编辑器,允许用户从图库中选择图像,然后在图像上绘制对象。
我创建了一个自定义ImageView,并使用所选图像调用了setImageBitmap。
问题是图像被放置在屏幕的中心,当我尝试绘制一个矩形形式(0,0)到(100,100)时,它从左上角开始绘制屏幕不是图像。
此外,所选位图的宽度和高度与自定义ImageView中onDraw()方法中画布的宽度和高度不同。怎么样?
答案 0 :(得分:0)
选择图像后,制作所选图像的位图,然后尝试下面的代码:
int currentBitmapWidth = bitMap.getWidth();
int currentBitmapHeight = bitMap.getHeight();
int ivWidth = imageView.getWidth();
int ivHeight = imageView.getHeight();
int newWidth = ivWidth;
newHeight = (int) Math.floor((double) currentBitmapHeight *( (double)
new_width / (double) currentBitmapWidth));
Bitmap newbitMap = Bitmap.createScaledBitmap(bitMap, newWidth,
newHeight, true);
imageView.setImageBitmap(newbitMap)
这会将图像设置为imageView的大小。