这是别人的网页版。http://photo2text.com/

乔帮主

年前加入一个项目小组,只要是做图像处理的软件,组内分配第一个任务便是熟悉位图。http://www.cnblogs.com/daoluanxiaozi/tag/MFC%E5%B0%8F%E9%A1%B9%E7%9B%AE/,但后来不知道为什么,没有呆下去。

大三刚开学的时候,@杨海坡 换了个QQ头像,大致的效果如下(原图见about页面):图片中有小小的方块,每个方块内对应一个字符。YY下,结合对位图的了解,可以动手实现,“这个可以有”。

png,jpg,gif等都不懂,所以从位图下手,来实现图片的处理。

思路:

  1. 读bmp文件
  2. 读取一个方块所有rgb值,然后通过YUV 与 RGB 的转换公式得到此方块的灰度值
  3. 根据对应的灰度值,绘对应的字符(灰度值越大,字符点阵的覆盖密度越小)
  4. 保存文件

图片在处理过后,在缩小的情况下视觉效果好,但不尽人意。程序未对所有的位图格式都有设定特定的处理方法,只实现了24位位图的处理,所以需要测试的话,可以用mspaint(附件里头的绘图或美图秀秀等)转换下格式。

可执行文件:http://files.cnblogs.com/daoluanxiaozi/pic.exe.rar

软件用MFC实现,测试通过,下面是源代码:

http://files.cnblogs.com/daoluanxiaozi/pic.rar

本文完 2012-11-1

捣乱小子 http://www.daoluan.net/

玩转位图(bitmap)相关推荐

  1. 【中级软考】位示图bitmap是什么?(利用二进制的一位来表示磁盘中的一个盘块的使用情况)

    位示图 位示图是利用二进制的一位来表示磁盘中的一个盘块的使用情况.当其值为"0"时,表示对应的盘块空闲:为"1"时,表示已经分配.有的系统把"0&qu ...

  2. 什么是点阵图 Bitmap ?

    什么是点阵图 Bitmap ? 关于点阵图 Bitmap 点阵图 Bitmap 的关键特征 点阵图 Bitmap 的优势 点阵图 Bitmap 的劣势 关于点阵图 Bitmap 点阵图是以像素组成的, ...

  3. android bitmap 灰度图,Bitmap 类

    图像格式 首先Bitmap本质而言,是图片一种存储方式. 位图(Bitmap)格式其实并不能说是一种很常见的格式(从我们日常的使用频率上来讲,远不如 .jpg .png .gif 等),因为其数据没有 ...

  4. 多玩动态图查看客户端

    做的一个小例子,查看多玩的动态图片 import win.ui; import web.form import string import inet.http import fsys http = i ...

  5. 前端玩转位运算(N皇后+Vue3位运算应用)

    观感度:

  6. 个人公众号改名须知!朋友圈大字图到底怎么玩?

    1.知乎专栏上线文章赞赏功能 经过知乎专栏赞赏功能的小范围内测后,知乎最终正式上线专栏文章赞赏功能.知乎作者通过浏览器访问自己的文章页面,在文章底部可以操作启用赞赏模块. 同时,为提供更稳定安全的体验 ...

  7. 美图分布式Bitmap实践:Naix

    大数据技术和应用系统目前已经在各个行业中发挥着巨大的作用,各种各样的开源技术也给大数据从业人员带来了很大的便利.Bitmap 作为一种大数据需求下产生的计算体系,有着计算速度快.信息密度高.支持海量数 ...

  8. 苹果力作:iPad Air/mini 2新鲜试玩+图赏

    苹果在今天凌晨发布了全新的iPad Air以及视网膜屏的iPad mini 2,这两款新iPad不仅外观更加纤薄,硬件也非常强大,全部换上了64位A7处理器.从国外媒体带来的真机试玩以及图赏可以看到, ...

  9. Android 图片性能优化:Bitmap

    一.引入 图片作为内存消耗大户,一直是开发人员尝试优化的重点对象.Bitmap的内存从3.0以前的位于native,到后来改成jvm,再到8.0又改回到native.jvm每个进程都有内存上限,而na ...

  10. android 自定义ViewGroup和对view进行切图动画实现滑动菜单SlidingMenu[转]

    http://blog.csdn.net/jj120522/article/details/8095852 示意图就不展示了,和上一节的一样,滑动菜单SlidingMenu效果如何大家都比较熟悉,在这 ...

最新文章

  1. Iterator(迭代器)的一般用法
  2. Oracle RMAN备份深入解析--联机备份
  3. android:怎样用一天时间,写出“飞机大战”这种游戏!(无框架-SurfaceView绘制)...
  4. 利用Servlet生成动态验证码
  5. Xcode 6 allows VECTOR image assets… any idea how to use them?
  6. class.getResourceAsStream与class.getClassLoader().getResourceAsStream区别
  7. 黑圈数字符号0到50复制_电脑上怎么打出特殊符号「收藏」
  8. 类文件结构和字节码指令
  9. 机器视觉九大应用场景
  10. 解读云计算的8项核心技术
  11. MES系统软件如何在数控加工车间应用?
  12. java学习之打印菱形和空心菱形
  13. 如何查看本机IP地址?
  14. 为什么摄像头模块功耗和EMI需要求助SerDes?
  15. 波士顿大学 计算机专业,波士顿大学计算机科学专业波士顿大学计算机科学专业.pdf...
  16. 随手写一篇关于rabbitMQ的安装教程
  17. 《人性的弱点》【美】戴尔 卡耐基 读书笔记
  18. 极速接入港交所OMD-C 港股L2数据,JAR WebSocket API获取数据
  19. GPS北斗校时服务器(时间服务器)在港口自动化系统应用
  20. AMD锐龙7000系列CPU命名混乱?三分钟帮你看明白

热门文章

  1. OEM XP 让你的盗版xp像品牌机一样华丽
  2. Linux Irq domain
  3. socketpair机制
  4. Forever 0.5 (计算几何思维)
  5. 水下清淤机器人_国产第五代箱涵清淤机器人真机亮相上海城市管网展恒通环境展位...
  6. java版AES加密算法实现
  7. SLAM学习笔记-------------(10)后端2
  8. android 取消多个闹钟,如何在android中取消闹钟
  9. python的运行方式_Python的两种运行方式
  10. oracle中主键自增长,Oracle中给主键设置自增长