问题描述
我通过执行以下操作在ImageView上绘制线条:
Bitmap imageBitmap = ((BitmapDrawable) imageView.getDrawable()).getBitmap();
Bitmap duplicateBitmap = Bitmap.createBitmap(imageBitmap.getWidth(),imageBitmap.getHeight(),Bitmap.Config.RGB_565);
Canvas targetCanvas = new Canvas(duplicateBitmap);
targetCanvas.drawBitmap(imageBitmap,null);
Paint paint = new Paint();
paint.setColor(Color.RED);
paint.setStrokeWidth(3f);
targetCanvas.drawLine(0f,100f,imageBitmap.getWidth(),paint);
imageView.setImageDrawable(new BitmapDrawable(getResources(),duplicateBitmap));
未放大时看起来还可以。
但是当我放大时,线条变粗了。 (这是预期的行为)
现在,如何在图像视图上绘制线条,以使用户放大时线条的粗细不受影响?
P.S:我先尝试“放大”图像,然后在图像上绘制线条。 (点击按钮或其他方式)。但这没有用,线仍然很粗。
我还发现,当图像分辨率较低时,绘制的线条会更粗。因此,我认为在图像上绘图也与图像分辨率有关。
我当时想用高分辨率画布遮盖ImageView,但这会降低内存效率。另外,我对如何真正实现这一点一无所知。
我以某种方式相信this question的答案可以解决我的问题。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)