向图像添加空格并保存文件[关闭]

Posted

技术标签:

【中文标题】向图像添加空格并保存文件[关闭]【英文标题】:Add whitespace to image and save file [closed] 【发布时间】:2017-01-04 16:56:55 【问题描述】:

我有一个图像想要添加空格并保存它。我如何向我的图像添加空格,我有从 sd 卡中选择图像的路径。

【问题讨论】:

空白到图像? 例如我添加了一张图片 保持白色背景并使用 padding 属性。 我认为您可以将填充添加到图像视图并从图像视图创建位图并将其保存为图像文件。 @Ahamed & AlphaQ 我想保存位图。 【参考方案1】:

首先,创建一个Bitmap,其大小为您希望最终图像的大小:

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

然后创建一个CanvasBitmap绘制,并绘制背景颜色:

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);

最后,按照Saving Files 训练将这个Bitmap 保存到File。您可以使用bitmap.compress(Bitmap.CompressFormat.PNG, 100, outputStream); 而不是outputStream.write() 来存储Bitmap

【讨论】:

这个效果最好,但是在我的图像中添加了一个黑色空间而不是空白,更改为 canvas.drawColor(Color.WHITE, PorterDuff.Mode.LIGHTEN);解决了我的问题

以上是关于向图像添加空格并保存文件[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

IntelliJ IDEA如何关闭文件自动保存并给修改过的文件添加星号

C#创建多个图像并保存它们[关闭]

从 .txt 中提取以空格分隔的列并添加以保存在新数据框中

Visual Studio 代码编辑器中的问题。为啥我保存文件时会关闭它们?

使用 C++ 将空格分隔值文本转换为 .csv 然后保存 [关闭]

Matlab:向图像添加细线,以粗线保存结果