博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
图形设备接口(GDI)
阅读量:7216 次
发布时间:2019-06-29

本文共 875 字,大约阅读时间需要 2 分钟。

图形设备接口(GDI,Graphics Device Interface)负责在显示器和打印机上显示图形。GDI 是由几

百个函数和一些相关的数据类型、宏和结构构成的。
Windows 98/NT 中的图形主要由GDI32.DLL 动态链接库输出的函数来处理。在Windows 98 中,
这个GDI32.DLL 实际是利用16 位GDI.EXE 动态链接库来执行函数。在Windows NT 中,GDI.EXE
只用于16 位的程序。
因为PC 兼容机种上可以连接许多种不同的图形图像设备,所以GDI 的主要目的之一是支持与设
备无关的图形。Windows 程序应该能够毫无困难地在Windows 支持的任意一种图形输出设备上执行,
GDI 通过将程序和不同输出设备的特性隔离开来的方法达到这一目的。
当用户想在一个图形输出设备上绘图时,首先必须获得一个设备内容的句柄。将句柄传回给程序
时,Windows 就给了用户使用设备的权限,然后在GDI 函数中将这个句柄作为一个参数,用来标识在
其上进行绘图的设备。
设备内容中包含许多确定GDI 函数如何在设备上工作的属性,这些属性允许传递给GDI 函数的
参数只包含起始坐标或者尺寸信息,而不必包含Windows 在设备上显示对象时需要的所有其他信息。
例如,当调用TextOut 时,只需要在函数中给出设备内容句柄、起始坐标、文字和文字的长度,而不
必指定字体、文字颜色、文字后面的背景色彩以及字符间距。因为这些属性都是设备内容的一部分。

设备内容

Windows 提供了几种取得设备内容句柄的方法。如果在处理一个消息时取得了设备内容句柄,应
该在退出窗口函数之前释放它。一旦释放了句柄,它就不再有效了。但是对于打印机设备内容句柄,
规则就没有这么严格。
最常用的取得并释放设备内容句柄的方法是,在处理WM_PAINT 消息时,使用BeginPaint 和
EndPaint:

hdc = BeginPaint (hwnd, &ps) ;……………………EndPaint (hwnd, &ps) ;

 

转载地址:http://gluym.baihongyu.com/

你可能感兴趣的文章
Hystrix:HystrixCollapser请求合并
查看>>
three.js 入门详解(一)
查看>>
Android基础之Java接口
查看>>
Angular开发实践(一):环境准备及框架搭建
查看>>
Vue2 源码漫游(二)
查看>>
微信浏览器下拉黑边的终极解决方案---wScroollFix
查看>>
我是如何学会爱上 Vim 的
查看>>
小tips:JS中typeof与instanceof用法
查看>>
阿里云Ecs挂载云盘
查看>>
《Kotlin项目实战开发》第1章 Kotlin是什么
查看>>
基于 react, redux 最佳实践构建的 2048
查看>>
云栖大会看技术人成长之路
查看>>
从零搭建React全家桶框架教程
查看>>
Windows command tools
查看>>
Webpack 最佳实践总结(一)
查看>>
【138天】尚学堂高淇Java300集视频精华笔记(84)
查看>>
docker与git实现push-to-deploy
查看>>
vue2.0 与 bootstrap datetimepicker的结合使用
查看>>
ant design后台模板-1.前端环境搭建
查看>>
什么是npm ?
查看>>