在这些日子里,图像让我感到紧张。现在,保存图像变成黑色。我保存了一张色彩缤纷的照片,但在保存时,它只获得了整个黑色。我不知道我的问题是什么。给我一些帮助。
这是我的代码。
BitmapFactory.Options options = new BitmapFactory.Options();
options.inPreferredConfig = Bitmap.Config.ARGB_8888;
Bitmap myBitmap = BitmapFactory.decodeFile(picturePath,options);
ByteArrayOutputStream bao= new ByteArrayOutputStream();
myBitmap.compress(Bitmap.CompressFormat.PNG,100, bao);
byte [] ba = bao.toByteArray();
imageSave = Base64.encodeToString(ba, Base64.DEFAULT);
看起来就是这样。
答案 0 :(得分:0)
ByteArrayOutputStream bytes = new ByteArrayOutputStream();
bmp.compress(Bitmap.CompressFormat.JPEG, 100, bytes);
File file = new File(Environment.getExternalStorageDirectory()
+ File.separator + "myImage.jpg");
try {
file.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
try {
fos = new FileOutputStream(file);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
try {
fos.write(bytes.toByteArray());
fos.close();
Toast.makeText(this, "Image saved", Toast.LENGTH_SHORT).show();
} catch (IOException e) {
e.printStackTrace();
}
答案 1 :(得分:0)
我明白了。这是我的答案。
public byte[] getBytesFromBitmap(Bitmap bitmap) {
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bitmap.compress(CompressFormat.PNG, 70, stream);
return stream.toByteArray();
}
BitmapFactory.Options options = new BitmapFactory.Options();
options.inPreferredConfig = Bitmap.Config.ARGB_8888;
Bitmap myBitmap = BitmapFactory.decodeFile(picturePath,options);
imageSave = Base64.encodeToString(getBytesFromBitmap(myBitmap), Base64.NO_WRAP);