Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/183.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在android中使用两种不同大小的画布_Android_Image_Bitmap_Android Canvas - Fatal编程技术网

如何在android中使用两种不同大小的画布

如何在android中使用两种不同大小的画布,android,image,bitmap,android-canvas,Android,Image,Bitmap,Android Canvas,我正在创建两个不同的画布,pcanvas1和pcanvas2。画布大小不同 bitmap = Bitmap.createBitmap(100, 100 , Config.ARGB_8888); pcanvas1 = new Canvas(); pcanvas1.setBitmap(bitmap); bitmap1 = Bitmap.createBitmap(200, 200 , Config.ARGB_8888); pcanvas2 = new Canvas(); pcanvas2.set

我正在创建两个不同的画布,
pcanvas1
pcanvas2
。画布大小不同

bitmap =  Bitmap.createBitmap(100, 100 , Config.ARGB_8888);
pcanvas1 = new Canvas();
pcanvas1.setBitmap(bitmap); 
bitmap1 =  Bitmap.createBitmap(200, 200 , Config.ARGB_8888);
pcanvas2 = new Canvas();
pcanvas2.setBitmap(bitmap1);
我在两个画布中使用相同的位图,但大小不同

bitmap =  Bitmap.createBitmap(100, 100 , Config.ARGB_8888);
pcanvas1 = new Canvas();
pcanvas1.setBitmap(bitmap); 
bitmap1 =  Bitmap.createBitmap(200, 200 , Config.ARGB_8888);
pcanvas2 = new Canvas();
pcanvas2.setBitmap(bitmap1);
我需要在两个位图的同一点上画圆

如何做到这一点?如果画布大小不同。

比例:

bitmap =  Bitmap.createBitmap(100, 100 , Config.ARGB_8888);
pcanvas1 = new Canvas();
pcanvas1.setBitmap(bitmap); 
bitmap1 =  Bitmap.createBitmap(200, 200 , Config.ARGB_8888);
pcanvas2 = new Canvas();
pcanvas2.setBitmap(bitmap1);
scale_x = bitmap2.width/bitmap1.width;
scale_y = bitmap2.height/bitmap1.height;

canvas1.drawLine(startX1, startY1, stopX1, stopY1, paint);

canvas2.drawLine(startX1*scale_x, startY*scale_y, stopX*scale_x, stopY*scale_y, paint);

类似于上述内容。

您对解决方案有反馈吗?很抱歉,我没有尝试,我会尝试让您知道。