C#如何调用GDI实现旋转和缩放的功能?

ft9788501 2017-04-10 10:54:13
C#如何调用GDI实现旋转和缩放的功能?(注意是调用GDI而不是GDI+)
   BLENDFUNCTION bf = new BLENDFUNCTION(DirectUI.Win32.Const.AC.AC_SRC_OVER, 0x0, 255, DirectUI.Win32.Const.AC.AC_SRC_ALPHA);
DirectUI.Win32.NativeMethods.AlphaBlend(
this.hDC,
destRect.X,
destRect.Y,
destRect.Width,
destRect.Height,
hDC,
srcRect.X,
srcRect.Y,
srcRect.Width,
srcRect.Height,
bf);

目前就只用了这个函数实现贴图,但是要怎么才能旋转和缩放呢??
...全文
237 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
ft9788501 2017-04-10
  • 打赏
  • 举报
回复
引用 5 楼 yuwenge 的回复:
[quote=引用 4 楼 ft9788501 的回复:] [quote=引用 3 楼 xuzuning 的回复:] GDI+ 是 GDI 的升级版本,两者并没有本质的区别,只是性能提高了,功能多了些而已 无论是 GDI+ 还是 GDI,最终都需要落实到具体的设备上 不知你把 this.hDC 看成了什么? 而 GDI+画图必须先创建一个Bitmap 的说法更是无稽之谈
可以正面解答我的问题么?而不是在这里争论不相干的事情,项目需求非要用GDI而不是GDI+[/quote] 用矩阵。 PS:还是建议用GDI+,多部署个dll难道就会死?[/quote] 用矩阵是怎么弄法?有相关的文献不?
卧_槽 2017-04-10
  • 打赏
  • 举报
回复
引用 4 楼 ft9788501 的回复:
[quote=引用 3 楼 xuzuning 的回复:] GDI+ 是 GDI 的升级版本,两者并没有本质的区别,只是性能提高了,功能多了些而已 无论是 GDI+ 还是 GDI,最终都需要落实到具体的设备上 不知你把 this.hDC 看成了什么? 而 GDI+画图必须先创建一个Bitmap 的说法更是无稽之谈
可以正面解答我的问题么?而不是在这里争论不相干的事情,项目需求非要用GDI而不是GDI+[/quote] 用矩阵。 PS:还是建议用GDI+,多部署个dll难道就会死?
ft9788501 2017-04-10
  • 打赏
  • 举报
回复
引用 3 楼 xuzuning 的回复:
GDI+ 是 GDI 的升级版本,两者并没有本质的区别,只是性能提高了,功能多了些而已 无论是 GDI+ 还是 GDI,最终都需要落实到具体的设备上 不知你把 this.hDC 看成了什么? 而 GDI+画图必须先创建一个Bitmap 的说法更是无稽之谈
可以正面解答我的问题么?而不是在这里争论不相干的事情,项目需求非要用GDI而不是GDI+
xuzuning 2017-04-10
  • 打赏
  • 举报
回复
GDI+ 是 GDI 的升级版本,两者并没有本质的区别,只是性能提高了,功能多了些而已 无论是 GDI+ 还是 GDI,最终都需要落实到具体的设备上 不知你把 this.hDC 看成了什么? 而 GDI+画图必须先创建一个Bitmap 的说法更是无稽之谈
ft9788501 2017-04-10
  • 打赏
  • 举报
回复
引用 1 楼 xuzuning 的回复:
GDI+ 有自己的方法,为什么不用呢?
因为一个是效率慢 还一个是因为GDI+画图必须先创建一个Bitmap,会占用内存空间 项目需求
xuzuning 2017-04-10
  • 打赏
  • 举报
回复
GDI+ 有自己的方法,为什么不用呢?
xuggzu 2017-04-10
  • 打赏
  • 举报
回复
bitblt,stretchbitblt?不知道是gdi还是+?无非就是算法+内存拷贝
卧_槽 2017-04-10
  • 打赏
  • 举报
回复
引用 6 楼 ft9788501 的回复:
[quote=引用 5 楼 yuwenge 的回复:] [quote=引用 4 楼 ft9788501 的回复:] [quote=引用 3 楼 xuzuning 的回复:] GDI+ 是 GDI 的升级版本,两者并没有本质的区别,只是性能提高了,功能多了些而已 无论是 GDI+ 还是 GDI,最终都需要落实到具体的设备上 不知你把 this.hDC 看成了什么? 而 GDI+画图必须先创建一个Bitmap 的说法更是无稽之谈
可以正面解答我的问题么?而不是在这里争论不相干的事情,项目需求非要用GDI而不是GDI+[/quote] 用矩阵。 PS:还是建议用GDI+,多部署个dll难道就会死?[/quote] 用矩阵是怎么弄法?有相关的文献不?[/quote] 忘记了,GDI至少10年没碰过了。 文献去翻古老的msdn,vc6.0版。

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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