Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.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_Crop - Fatal编程技术网

Android 将空白添加到图像并保存文件

Android 将空白添加到图像并保存文件,android,image,crop,Android,Image,Crop,我有一个图像,希望将空白添加到此图像并保存此图像。如何将空白添加到图像中,我有从sd卡选择的图像的路径 首先,创建一个符合最终图像大小的位图: Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888); 然后创建一个画布从位图绘制,并绘制背景色: Canvas canvas = new Canvas(bitmap); canvas.drawColor(Color.WHITE, PorterDuff.M

我有一个图像,希望将空白添加到此图像并保存此图像。如何将空白添加到图像中,我有从sd卡选择的图像的路径


首先,创建一个符合最终图像大小的
位图

Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
然后创建一个
画布
位图
绘制,并绘制背景色:

Canvas canvas = new Canvas(bitmap);
canvas.drawColor(Color.WHITE, PorterDuff.Mode.CLEAR);
然后将原始图像绘制到画布上:

Paint paint = new Paint();
paint.setAntiAlias(true);
paint.setFilterBitmap(true);
paint.setDither(true);

int top = (original.getHeight() - bitmap.getHeight()) / 2;
int left = (original.getWidth() - bitmap.getWidth()) / 2;

canvas.drawBitmap(original, top, left, paint);

最后,按照培训将此
位图
保存到
文件
。您可以使用
bitmap.compress(bitmap.CompressFormat.PNG,100,outputStream)
而不是
outputStream.write()
位图

空白存储到图像?我添加了一个图像,例如,保留白色背景并使用padding属性。我认为您可以将填充添加到图像视图,从图像视图创建位图,并将其保存为图像文件。@Ahamed&AlphaQ我想保存位图。这样效果最好,但在我的图像中添加了一个黑色空间,而不是空白,改为canvas.drawColor(Color.WHITE,PorterDuff.Mode.light);解决了我的问题