以前在研究半透明不规则窗口的时候,用的是gdi的TextOut/DrawText绘制字体,但绘制出的字体是透明的, 现在我完全放弃了GDI的TextOut()、BitBlt()的方式,而用SetDIBitsToDevice()代替,就是直接贴像素到DC里。 今天尝试用SetDIBitsToDevice()+UpdateLayeredWindow()实现半透明不规则窗口,结果非常顺利! 贴出来,共享给需要的朋友. 另外,本程序还附带了一个使用MMX汇编优化的32位alpha混合函数(57行,有详尽注释),需要的朋友可以直接copy了。 PS:关于字体的绘制 我建议大家用GetGlyphOutline()手动提取字形像素去绘制,因为TextOut这类绘制函数功能有限,只适合初级软件使用,而要想画出丰富多彩的界面,比如字体alpha渐变,就必须自己操作像素,所以GetGlyphOutline()才是专业级的,而且兼容性好,可以抽象出来提供给ddraw、d3d、opengl等使用
2019-12-21 21:37:23 328KB 不规则窗口
1
ViolaJones是人脸识别中效率最高的,在OpenCV中对应的库文件为cvHaarDetectObjects, 本文件为自己写的识别代码,调用该库函数 配置好OpenCV之后可以使用
2019-12-21 21:00:39 3KB 人脸识别
1
VC++的.cpp文件调用CUDA的.cu文件中的函数
2019-12-21 20:42:22 26KB CUDA
1
很多涉及图上操作的算法都是以图的遍历操作为基础的。试写一个程序,演示无向图的遍历操作。 以邻接表为存储结构,实现连通无向图的深度优先和广度优先遍历。以用户指定的结点为起点,分别输出每种遍历下的结点访问序列和相应生成树的边集。 [测试数据] 由学生依据软件工程的测试技术自己确定。注意测试边界数据,如单个结点。 [实现提示] 设图的结点不超过30个,每个结点用一个编号表示(如果一个图有n个结点,则它们的编号分别为1,2,…,n)。通过输入图的全部边输入一个图,每个边为一个数对,可以对边的输入顺序作出某种限制。注意,生成树的边是有向边,端点顺序不能颠倒。
2019-12-21 20:29:18 120KB BFS DFS
1
存储管理详细实验报告和cpp文件,含FIFO和LRU的比较,实验报告都是我一个一个字敲进去的。
2019-12-21 20:16:47 64KB 实验报告 cpp文件
1
C++ 串口类 串口通信 RS232 不需要使用微软件的串口控件
2019-12-21 19:32:03 2KB C++ 串口类 串口通信 RS232
1
老外最新版的avilib.h文件和avilib.cpp文件,解压后直接放在自己项目里,直接调用就行。里面还有如何调用.cpp文件内函数的说明文档,可供参考。
2019-12-21 19:28:54 19KB avilib.h avilib.cpp avi .avi
1
codeproject上的共享工程,源地址:https://www.codeproject.com/Articles/2463/CSHA-A-C-Class-Implementation-of-the-SHA-Hash-A,压缩包里包含SHA1.h和SHA1.cpp文件,不能设置免费所以设置了最低分,欢迎交流暗号271888395。
2019-12-21 19:26:05 7KB SHA1 哈希值 MD5
1