转自:vc知识库:http://www.vckbase.com/index.php/wv/841
前几天要做一段程序,把文字和位图图像合成并保存为位图文件。但问了好久都没人给一个满意的答复,只好在黑暗中摸索,费了一番功夫,实现了图像与文字的合成,并且可用鼠标拖动文字。现在我把代码贴出,希望能给需要的朋友以帮助。
一、关键函数
1.
这个函数把位图数据一个像素一个像素的贴到一个兼容位图上,hdc是选择了兼容位图的兼容DC。
2.
这个函数的作用和SetDIBits刚好相反,它把兼容位图内已存在的数据一个像素一个像素的拷贝到数据缓冲区(lpvBits)中。这样程序的实现就比较明朗了,首先根据位图的尺寸,创建一个兼容位图,然后把图片绘制到兼容位图,接着把文字也写到兼容位图上,然后再从兼容位图得到合成的数据。
二、关键程序段
三、图例
添加文字的效果图
四、结束语
有关位图的读写,参考了VC知识库在线杂志第21期中胡卓玮朋友写的《位图文件读写综述》一文。
本程序在win2000、vc6、174*218 24位真彩色图片下调试通过。
本程序存在以下问题:
1.不能在兼容DC里选择画笔、字体;
2.从兼容位图里取数据,仅对真彩色位图有效。
如果您知道如何解决以上问题,欢迎赐教。
地址:南京世纪新讯科技有限公司;msn:kylin_wei@hotmail.com

本文介绍了一种将文字和位图图像合成的技术,并提供了详细的代码实现。文中详细解释了使用SetDIBits和GetDIBits函数进行图像合成的过程。
8090

被折叠的 条评论
为什么被折叠?



