android – 如何将字节数组转换为位图图像?
作者:互联网
这里我附加将Bitmap转换为Byte数组的代码,现在我必须重新生成位图以在android Image-view中显示.
在下面的代码中,mRawBitmapData是byte Araay.这里的代码是为转换后的图像创建字节数组,所以现在我必须从这个字节数组中重新生成位图.
private void convertArgbToGrayscale(Bitmap bmpOriginal, int width, int height){
int pixel;
int k = 0;
int B=0,G=0,R=0;
try{
for(int x = 0; x < height; x++) {
for(int y = 0; y < width; y++, k++) {
pixel = bmpOriginal.getPixel(y, x);
if(pixel == -1){
mDataArray[k] = 1;
}
else {
mDataArray[k] = 0;
}
}
if(mDataWidth>width){
for(int p=width;p<mDataWidth;p++,k++){
mDataArray[k]=0;
}
}
}
}catch (Exception e) {
Log.e(TAG, e.toString());
}
}
private void createRawMonochromeData(){
int length = 0;
for (int i = 0; i < mDataArray.length; i = i + 8) {
int k=0;
for (int j = 7; j >=0; j--, k++) {
if(mDataArray[i+k]==1)
{
mRawBitmapData[length] |= 1 << j;
}
else
{
mRawBitmapData[length] &= ~(1 << j);
}
}
length++;
}
}
解决方法:
byte[] bitmapdata; // let this be your byte array
Bitmap bitmap = BitmapFactory.decodeByteArray(bitmapdata , 0, bitmapdata .length);
标签:android,android-bitmap 来源: https://codeday.me/bug/20190716/1475531.html