我熟悉c++,但是完全不懂GDI。我看了那些简单应用程序,那里面都要用到GDI绘图技术。请问我该怎
不该学,了解即可.
WIN API一般必学得有四类
user interface
system services
networking
graphics and multimedia
GDI属于第4类, 这类东西最没用, 里面像什么brush, clipping,lines and curves等等这些,基本就是鸡肋. 绘图最好使用GDI+, GDI只要了解HDC的用法,和SetROP2,因为GDI+中没有SetROP
第1类UI是最重要的万物之基础
第2类编写系统工具, windows高手, 逆向等的第一步
第3类网络编程,比较重要
第4类绘图是最难的, 因为你要解决两个问题, 绘图本身的技术问题, 业务领域的问题, 绘图首先是需要用数学建模的, 如果你软件设计不是很精通, 那你 还得考虑架构问题
你好,那怎样去了解?你工作了吗?你工作用到最多的是什么?
当然是用户界面和系统服务这两块, GDI用得很少.
找个相对简单的GDI示例程序,把整个图形、图象的创建、修改、作图、显示的过程跟踪一遍,理解其中遇到的语句的作用,以及为什么。
基本上就是:
在内存中建立一个自己的图象映射(开存储区,初始化),这个映射可以是自定义格式的,也可以是标准的,比如设备无关位图,如果不是RGB的还要关心一下调色板问题;
读取图象数据填入上边开设的图象映射;
用GDI标准函数可在图上绘制图形;用自定义的程序逐象素进行图象处理;
开设显示窗口,将内存映象中的图象粘贴到显示窗口,而显示窗口的图象是(显示)设备相关的
设置一些条件,根据需要重画或重新粘贴图象到窗口
获取鼠标信息,与内存映象中的图象建立联系,找到象素、绘图形或进行图象处理
图形、图象处理中涉及刷子、颜色或者调色板之类的GDI工具
理解基本的就可以了?有推荐的学习资料吗?
能把一个基本的例子读懂了就可开始设计自己的了。没有,我学的时候还都是英文的原版手册,不清楚最近是否有好的中文资料。
看了例子后可以用MFC框架自己试试各种功能、控制。
其实你的设计如果不涉及窗口显示,可以把这个放一放,毕竟只是软件外观上的花活而已。
经验是如果真有个设计项目需要,就学得特别快,比较有的放矢。
GDI说白了也只是windows提供图形类动态链接库,本质也就是调用windows的API,原理和调用别的API函数一样的,只不过GDI类的函数多熟悉下