我正在开发一个使用Java的Android应用程序。我正在我的应用程序中做一些图像处理。首先,我喜欢保存我对图像处理一无所知。但是,我正在试着进入其中。我现在想要做的是在位图上绘制一个简单的图像,并将其保存为一个位图。
我从资源文件夹中加载一个图像作为位图,如下所示。
Bitmap rectBitmap = BitmapFactory.decodeStream(istr);
假设这张照片是一个简单的矩形,就像这样。
然后我想使用坐标点绘制一个位图(三角形)。图像应该是这样的。
我对代码的想象是这样的。
rectBitmap.drawOnTop(coorPointOneValues, coorPointTwoValues, coorPointThreeValues);
由于我使用的是2D坐标系,因此坐标点值将是x和y值。
然后我想在绘制traingle后保存图像,如下所示
rectBitmap = rectBitmap.saveBitmap();
我该怎么做呢?上面提到的场景是我能想到的一种可能的方式。如果这是不可能的,另一种方式是什么呢?
发布于 2018-03-30 00:19:47
你可以这样做。
1、读取或创建位图:
Bitmap rectBitmap = BitmapFactory.decodeStream(istr);
Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
2 .在位图上创建画布:
Canvas canvas = new Canvas(bitmap);
3、画点什么:
canvas.drawColor(Color.RED)
canvas.drawRect / canvas.drawLine / canvas.drawArc ...
//for triangle shape you can use drawPath
4、保存位图:
bitmap.compress(CompressFormat format, int quality, OutputStream stream)
https://stackoverflow.com/questions/49560437
复制相似问题