BMP格式可参考这片文章:点击跳转

上代码

 public static byte[] convertBitmap2Bmp(Bitmap bitmap) {if (bitmap == null) {return null;}int w = bitmap.getWidth();int h = bitmap.getHeight();int wWidth = w * 3 + w % 4;int bmpDateSize = h * wWidth;int size = 14 + 40 + bmpDateSize;byte buffer[] = new byte[size];// 1.BMP文件头 14buffer[0] = 0x42; //bfType 2bytesbuffer[1] = 0x4D;buffer[2] = (byte) ((size >> 0) & 0xFF); //bfSize 4bytesbuffer[3] = (byte) ((size >> 8) & 0xFF);buffer[4] = (byte) ((size >> 16) & 0xFF);buffer[5] = (byte) ((size >> 24) & 0xFF);buffer[6] = 0x00; //bfReserved1 2bytesbuffer[7] = 0x00;buffer[8] = 0x00; //bfReserved2 2bytesbuffer[9] = 0x00;buffer[10] = 0x36; //bfOffBits 14+40 4bytesbuffer[11] = 0x00;buffer[12] = 0x00;buffer[13] = 0x00;// 2.BMP信息头 40buffer[14] = 0x28; //biSize 40 4bytesbuffer[15] = 0x00;buffer[16] = 0x00;buffer[17] = 0x00;buffer[18] = (byte) ((w >> 0) & 0xFF); //biWidth 4bytesbuffer[19] = (byte) ((w >> 8) & 0xFF);buffer[20] = (byte) ((w >> 16) & 0xFF);buffer[21] = (byte) ((w >> 24) & 0xFF);buffer[22] = (byte) ((h >> 0) & 0xFF); //biHeight 4bytesbuffer[23] = (byte) ((h >> 8) & 0xFF);buffer[24] = (byte) ((h >> 16) & 0xFF);buffer[25] = (byte) ((h >> 24) & 0xFF);buffer[26] = 0x01; //biPlanes 2bytesbuffer[27] = 0x00;buffer[28] = 0x18; //biBitCount 24位位图 2bytes buffer[29] = 0x00;buffer[30] = 0x00; //biCompression 4bytesbuffer[31] = 0x00;buffer[32] = 0x00;buffer[33] = 0x00;buffer[34] = 0x00; //biSizeImage 4bytesbuffer[35] = 0x00;buffer[36] = 0x00;buffer[37] = 0x00;buffer[38] = 0x00; //biXpelsPerMeter 4bytesbuffer[39] = 0x00;buffer[40] = 0x00;buffer[41] = 0x00;buffer[42] = 0x00; //biYPelsPerMeter 4bytesbuffer[43] = 0x00;buffer[44] = 0x00;buffer[45] = 0x00;buffer[46] = 0x00; //biClrUsed 4bytesbuffer[47] = 0x00;buffer[48] = 0x00;buffer[49] = 0x00;buffer[50] = 0x00; //biClrImportant 4bytesbuffer[51] = 0x00;buffer[52] = 0x00;buffer[53] = 0x00;byte bmpData[] = new byte[bmpDateSize];for (int nCol = 0, nRealCol = h - 1; nCol < h; ++nCol, --nRealCol) {for (int wRow = 0, wByteIdex = 0; wRow < w; wRow++, wByteIdex += 3) {int clr = bitmap.getPixel(wRow, nCol);//clr = clr == 0 ? 0xFFFFFF : clr; //黑色背景转为白色bmpData[nRealCol * wWidth + wByteIdex] = (byte) Color.blue(clr);bmpData[nRealCol * wWidth + wByteIdex + 1] = (byte) Color.green(clr);bmpData[nRealCol * wWidth + wByteIdex + 2] = (byte) Color.red(clr);}}System.arraycopy(bmpData, 0, buffer, 54, bmpDateSize);// 输出到sdcard查看try {FileOutputStream fos = new FileOutputStream(new File("/sdcard/test.bmp"));fos.write(buffer);fos.close();} catch(Exception e) {e.printStackTrace();}return buffer;}

Android储存BMP格式图片相关推荐

  1. android 将bitmap存为 bmp格式图片大小,把bitmap保存成 BMP的格式 并且位深度为1

    生成图片的要求:图像格式采用单色位图文件格式(BMP)  要求bmp的位深度为1 参考: 代码有点小瑕疵 : bitmap的图片宽度要求是:8的整数倍 /** * 将Bitmap存为 .bmp格式图片 ...

  2. C语言读取BMP格式图片

    C语言读取BMP格式图片 BMP 维基百科,自由的百科全书 汉漢▼ 位图 扩展名 .bmp 开发者 Microsoft 格式 图像文件格式  本文介绍的是一种图像文件格式. 关于Unicode的第1区 ...

  3. 【数字图像处理】一.MFC详解显示BMP格式图片

    本文主要是讲述<数字图像处理>系列栏目中的第一篇文章.主要详细介绍了BMP图片格式,同时使用C++和MFC显示BMP格式,主要结合自己的<数字图像处理>课程和以前的项目叙述讲解 ...

  4. bmp文件格式_一次性解决CAD转换成BMP格式图片的问题

    关于BMP格式图片,可能很多小伙伴都遇到得比较多,但在这里还是稍微解释一下吧. 它是Windows操作系统中的标准图像文件格式,大家都知道BMP格式的图片都非常大,那是因为它没有经过任何压缩. 当然, ...

  5. C语言读取和存储bmp格式图片

    开发过程中有时候需要解析bmp数据,下面先简单介绍bmp数据组成,后面附上C语言读取和存储bmp格式图片代码. 典型的位图文件格式通常包含下面几个数据块: BMP文件头:保存位图文件的总体信息. 位图 ...

  6. MFC详解显示BMP格式图片

    本文主要是讲述<数字图像处理>系列栏目中的第一篇文章.主要详细介绍了BMP图片格式,同时使用C++和MFC显示BMP格式,主要结合自己的<数字图像处理>课程和以前的项目叙述讲解 ...

  7. 将BMP 格式图片转换为 JPEG 格式【c语言】

    源码链接: https://blog.csdn.net/qq_44394952/article/details/122587475?spm=1001.2014.3001.5502. 一.任务及目标 利 ...

  8. 关于BMP格式图片在终端显示的具体做法(超详细)

    关于BMP格式图片在终端显示的具体做法(超详细) #include <stdio.h> #include <sys/mman.h> #include <sys/types ...

  9. 如何批量将 bmp 格式图片转换转换为 jpg

    概要:png 和 jpg 这两种格式的图片相信大家都非常熟悉,但是 bmp 格式的图片可能大家接触得并没有那么多,bmp 是 Windows 操作系统中的标准图像文件格式,能够被多种 Windows ...

最新文章

  1. 用Scikit-learn和TensorFlow进行机器学习_1
  2. Alibaba Cluster Data 开源:270GB 数据揭秘你不知道的阿里巴巴数据中心
  3. 数仓备机DN重建:快速修复你的数仓DN单点故障
  4. linux输出和错误信息文件,Log4j配置将错误信息输出到指定文件中[linux tomcat]
  5. Windows登录密码破解
  6. 2019秋 哈工大《概率论与数理统计》试题A及答案
  7. 学习python的字符串组合
  8. ASO优化选词:三种方法教你精准定位关键词
  9. 苹果cms模板_万词无限模板站群黑帽SEO利器
  10. android 柱状图绘制,安卓MPAndroidChart绘制柱状图
  11. Qt PDF编辑器笔记
  12. 2018清华计算机考研经历,2018清华计算机考研经验分享
  13. C++入门——神奇的引用
  14. Typora结束无序列表
  15. 016_jie_chu_b_zhan_qu_yu_xian_zhi
  16. HTML如何在图片上添加内容(如文字,菜单栏,按钮等)
  17. 当过服务员、快递员,现在年薪30W,历尽山河叛逆少年终会成长
  18. 5款冷门小工具,让你的电脑变得与众不同
  19. 在甲方做安全的第五个月
  20. Task03:复杂查询方法-视图、子查询、函数等

热门文章

  1. Windows服务没有及时响应启动或控制请求
  2. 报错:axis2.AxisFault: Transport error: 401 Error: Unauthorized
  3. 70行代码撸一个桌面自动翻译神器(采用Markdown格式编写)
  4. ubuntu系统使用docker gitlab 磁盘空间满问题解决记录
  5. 微信小程序:获取用户手机号码的过程
  6. 2021年java重点面试题
  7. 网页js实现的各种3D树形结构模型
  8. fullcalendar实现拖拽方案到日历中--js
  9. Spark 生成 janusgraph adjacent list
  10. 各种监控系统原理说的头头是道,不懂这些选型指标都是纸上谈兵