位图孪生兄弟DDB与DIB——本是同根生,相煎何太急!

阅读: 评论:0

位图孪生兄弟DDB与DIB——本是同根生,相煎何太急!

位图孪生兄弟DDB与DIB——本是同根生,相煎何太急!

     最近有幸接触了WinCE下的嵌入式编程,做的是GDI方面的东西,发现微软的平台兼容性没有他吹嘘的那么好,甚至堪称艰难,做一个简单的从Windows XP到Windows CE的移植就费了我老大劲,很多函数在WinCE下不能用,必须自己重写,在重写函数时才发现,原来自己对GDI编程根本不了解,很多基本概念都没

弄清楚。于是乎,查阅了一些资料,在这里做一下笔记:

 

 

Visual C++中DDB与DIB位图编程全攻略:.shtml

 

DDB与DIB的区别:.html

说得通俗一点就是:DDB存于内存,DIB存于外存。

 

int GetDIBits(HDC hdc,           // handle to DC
  HBITMAP hbmp,      // handle to bitmap
  UINT uStartScan,   // first scan line to set
  UINT cScanLines,   // number of scan lines to copy
  LPVOID lpvBits,    // array for bitmap bits
  LPBITMAPINFO lpbi, // bitmap data buffer
  UINT uUsage        // RGB or palette index
);
LONG GetBitmapBits(HBITMAP hbmp,      // handle to bitmap
  LONG cbBuffer,     // number of bytes to copy
  LPVOID lpvBits     // buffer to receive bits
);
GetDIBits的作用是读取指定位图(DDB)指定行的数据,并把这些信息以指定DIB格式存入缓存。hdc参数有
什么用?因为DDB没有调色板,而DIB有调色板,所以转换时需要参考某个设备上下文(DC)的调色板。
GetBitmapBits函数只是将DDB数据保存到缓冲区,不需要调色板,所以不需要参考DC。

CreateDIBSection函数的理解及使用:.aspx

 

 

Wince编程十大忠告:.html

本文发布于:2024-01-31 15:47:57,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170668727629630.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:位图   本是   太急   兄弟   根生
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23