请问如何实现类似ps(photoshop)中的图层机制的简单方法? 急问!

Richard_yu82 2004-09-08 10:18:01
小弟,最近在做一个图像编辑的程序 其中需要利用图层机制,为了保证最初图像不改变
而实现图像标记操作,只想在最后将标识写入图像。 不知如何实现。!

望大虾们 指点! (采用替代机制也可^-^) 谢谢!!!!!
...全文
162 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
DentistryDoctor 2004-09-08
  • 打赏
  • 举报
回复
自己管理图层,按图层的Z-Order绘图图层上的图元。
azs 2004-09-08
  • 打赏
  • 举报
回复
一个图层对应一个图
Richard_yu82 2004-09-08
  • 打赏
  • 举报
回复
可不可以不使用DX ?? 本人不太喜欢的说! 嘿嘿!
希望能有其他的方式

DX的方式能够解决 谢谢kvis

再等!
kvls 2004-09-08
  • 打赏
  • 举报
回复
可以采用后台缓冲的方式,比如DX中的离屏画面,每个缓冲对应一个图层
once168 2004-09-08
  • 打赏
  • 举报
回复
用函数Bitbit(....)就是了,每一层一个位图,根据各层设置不同使用不同的ROP
azs 2004-09-08
  • 打赏
  • 举报
回复
摘自msdn:
BOOL TransparentBlt(
HDC hdcDest, // handle to destination DC
int nXOriginDest, // x-coord of destination upper-left corner
int nYOriginDest, // y-coord of destination upper-left corner
int nWidthDest, // width of destination rectangle
int hHeightDest, // height of destination rectangle
HDC hdcSrc, // handle to source DC
int nXOriginSrc, // x-coord of source upper-left corner
int nYOriginSrc, // y-coord of source upper-left corner
int nWidthSrc, // width of source rectangle
int nHeightSrc, // height of source rectangle
UINT crTransparent // color to make transparent
);
crTransparent
[in] The RGB color in the source bitmap to treat as transparent.
azs 2004-09-08
  • 打赏
  • 举报
回复
如果你是想像photoshop一样可以取消的话
那么“一个图层对应一个图”不能完全解决问题
你需要的是纪录绘图的指令(或可以逆向取消的指令),每次都可以动态的画上去,或恢复回去
酒红绿叶 2004-09-08
  • 打赏
  • 举报
回复
构建成透明得位图。
我只看过游戏的图层叠加。

http://iseeexplorer.cosoft.org.cn/photoshop60sdk.zip
这个据说是photoshop6。0的SDK

试试看。。
Richard_yu82 2004-09-08
  • 打赏
  • 举报
回复
我现在不懂的是 如何显示图层?
构建了几个图层 可是显示的时候 怎么办?
构建的图层如何能够为透明的呢?

我构建后就不行了,不能看见背景图了! 这该怎么解决阿?

19,469

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧