有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java将画布转换为位图

我有一个画布对象,我正在寻找一种方法,将画布绘制成位图对象,如下所示:

Canvas canvas = ...;
Bitmap bitmap = Bitmap.createBitmap(canvas);

有办法吗


共 (1) 个答案

  1. # 1 楼答案

    这可能有助于:

    private Bitmap getBitmap(int drawableRes, Context context) {
        Drawable drawable = context.getResources().getDrawable(drawableRes);
        Canvas canvas = new Canvas();
        Bitmap bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(), 
        drawable.getIntrinsicHeight(), Bitmap.Config.ARGB_8888);
        canvas.setBitmap(bitmap);
        drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), 
        drawable.getIntrinsicHeight());
        drawable.draw(canvas);
        return bitmap;
    }
    

    你这样称呼它:

         Bitmap drawableBitmap = getBitmap(YourResource, mContext);
    

    因此,您创建了一个新的位图,其宽度和高度与画布相同

      Bitmap myBitmap = new Bitmap( (int)Width, (int)Height, Config.RGB_565 )
      canvas.setBitmap(myBitmap)
    

    但不是绘画