android - 在android中的位图中将矩形绘制到不同的 Canvas 中

标签 android

我想使用位图将矩形绘制到不同的 Canvas 中,但我的 Paint 类无法正常工作。 谁能告诉我我的代码有什么问题

public Bitmap createBitmap(Rect rectImage, int i, int j) {

        Paint p = new Paint();
        p.setStyle(Style.FILL_AND_STROKE);
        p.setAntiAlias(true);
        p.setFilterBitmap(true);
        p.setDither(true);
        p.setColor(Color.RED);

        Bitmap bitmap = Bitmap.createBitmap(rectImage.width() * 2,
                rectImage.height() * 2, Bitmap.Config.ARGB_8888);

        Canvas c = new Canvas(bitmap);

//      c.drawColor(Color.RED);

        c.drawRect(rectImage.left, rectImage.top, rectImage.right,
                rectImage.bottom, p);

        return bitmap;

    }

当我使用 canvas.drawColor() 时,它可以工作,但我的 Paint 类没有响应 提前致谢!!

最佳答案

Bitmap tempBitmap = Bitmap.createScaledBitmap(bt, bt.getWidth(), bt.getHeight(), true);
Canvas canvas = new Canvas(tempBitmap);
Paint p = new Paint();
p.setStyle(Style.FILL_AND_STROKE);
p.setAntiAlias(true);
p.setFilterBitmap(true);
p.setDither(true);
p.setColor(Color.RED);

canvas.drawLine(x1, y1, x2, y1, p);//up
canvas.drawLine(x1, y1, x1, y2, p);//left
canvas.drawLine(x1, y2, x2, y2, p);//down
canvas.drawLine(x2, y1, x2, y2, p);

// rect ... 
//canvas.drawRect(/*all of my end coordinates*/, p);

ImageView iView = (ImageView)findViewById(R.id.imageViewPreview);
iView.setImageBitmap(tempBitmap);
iView.draw(canvas);

关于android - 在android中的位图中将矩形绘制到不同的 Canvas 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20833645/

相关文章:

android - 从 Android 中的短信中获取收件人号码

java - 删除或更新包时不会调用 BroadcastReceiver

android - 如何在 android actionbar compat 上强制溢出菜单?

Android:获取对膨胀 View 的引用/为膨胀 View 设置唯一ID

android - 如何以及使用什么来制作这个组件

android - bundle - 关键大小写敏感吗?

android - 以编程方式关闭android :windowActionBarOverlay style from action bar

android - 在 Android 中将多个项目写入 firebase

java - 保存应用程序数据?

java - Android 元素可见性无法正常工作