用C++和win32如何实现photoshop功能

用C++和win32怎么实现photoshop功能
如题:现在做一个项目,要求导入一张背景图片,然后用线条描边,现在的问题是,画线的时候要重绘窗体,就会把前景给擦除,有没有办法像photoshop一样做出一个多图层功能,图层之间相互不影响
或者其它的办法可以达到目的就好

PS:用win32+C++

------解决方案--------------------
用drictshow进行绘制

------解决方案--------------------
或是gdi都可以实现的
------解决方案--------------------
你程序中可以定义多个图层,图层之间需要混合,最后显示混合结果。
------解决方案--------------------
分别定义多个图层,然后对每个图层操作!
------解决方案--------------------
建议还是用库吧!opencv
------解决方案--------------------
GDI+