0
我想要將bmp圖像轉換爲android中的字節數組以使用mobiwire設備進行打印Device, 我試圖使用此功能執行此操作,但打印機輸出爲空白圖像轉換bmp圖像爲Android中的字節數組獲取空白圖像
此功能:
public static byte[] decodeBitmap(Bitmap bmp){
int bmpWidth = bmp.getWidth();
int bmpHeight = bmp.getHeight();
List<String> list = new ArrayList<String>(); //binaryString list
StringBuffer sb;
int bitLen = bmpWidth/8;
int zeroCount = bmpWidth % 8;
String zeroStr = "";
if (zeroCount > 0) {
bitLen = bmpWidth/8 + 1;
for (int i = 0; i < (8 - zeroCount); i++) {
zeroStr = zeroStr + "0";
}
}
for (int i = 0; i < bmpHeight; i++) {
sb = new StringBuffer();
for (int j = 0; j < bmpWidth; j++) {
int color = bmp.getPixel(j, i);
int r = (color >> 16) & 0xff;
int g = (color >> 8) & 0xff;
int b = color & 0xff;
// if color close to white,bit='0', else bit='1'
if (r > 160 && g > 160 && b > 160)
sb.append("0");
else
sb.append("1");
}
if (zeroCount > 0) {
sb.append(zeroStr);
}
list.add(sb.toString());
}
return hexList2Byte(commandList);
}
我在我的測試使用Mobiwire裝置2G
圖像首先編碼爲base64字符串使用上述方法,然後使用以下方法的base64編碼爲字節陣列..... –