窗口阴影模块2.0 by a2002上个版本: https://bbs.125.la/forum.php?mod=viewthread&tid=14712177
把原始窗口阴影想象成单色的矩形这个矩形经过高斯模糊处理后, 加上偏移即形成阴影实际上绘制时与原窗口重叠的部分应该不计算, 这样的话效率还可以[2.0]优化了软件计算高斯模糊的速度, 采用缓存机制[2.0]加入了Direct2D硬件加速, 当然在你的设备不支持Direct2D时GDI仍可用
可以参考exdui4.1的源码, 把绘画函数封装起来, 通过一个标识决定用gdi+还是D2D
这是个好主意, 然后它来了, 写了两天捏~
主要是D2D错误处理太复杂了, 尤其是那个设备丢失(移除?)的错误
但最终还是写出来啦, 流程大概如下:
你可能感觉是否开启硬件加速对阴影外观来说没有什么区别, 这是因为erf函数模拟的效果好这二者的区别主要在速度方面, 把阴影半径调至最大, 然后最大化窗口或者频繁调整窗口大小, 可以明显地看出区别