- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
windows程序设计(C语言版)第15章-与装置无关的点阵图
Programming Windows 程式开发设计指南(Windows95 程序设计 第五版)
第十五章 与装置无关的点阵图
在上一章我们了解到 Windows GDI 点阵图物件 (也称为与装置相关的点阵
图,或DDB)有许多程式设计用途。但是我并没有展示把这些点阵图储存到磁片
档案或把它们载入记忆体的方法。这是以前在 Windows 中使用的方法,现在根
本不用了。因为点阵图的 元格式相当依赖於设备,所以 DDB 不适用於图像交
换。DDB 内没有色彩对照表来指定点阵图的 与色彩之间的联系。DDB 只有在
Windows 开机到关机的生命期内被建立和清除时才有意义。
在Windows 3.0 中发表了与装置无关的点阵图(DIB),提供了适用於交换的
图像档案格式。正如您所知的,像.GIF 或.JPEG 之类的其他图像档案格式在
Internet 上比DIB 档案更常见。这主要是因为.GIF 和.JPEG 格式进行了压缩,
明显地减少了下载的时间。尽管有一个用於DIB 的压缩方案,但极少使用。DIB
内的点阵图几乎 没有被压缩。如果您想在程式中操作点阵图,这实际上是一
个优点。DIB 不像.GIF 和.JPEG 档案,Windows API 直接支援DIB。如果在记忆
体中有DIB,您就可以提供指 该DIB 的指标作为某些函式的参数,来显示DIB
或把DIB 转化为DDB。
DIB 档案格式
有意思的是,DIB 格式并不是源自於Windows。它首先定义在 OS/2 的 1.1
版中,该作业系统最初由IBM 和Microsoft 在八十年代中期开始开发。OS/2 1.1
在 1988 年发布,并且是第一个包含了类似 Windows 的图形使用者介面的OS/2
版本,该图形使用者介面被称之为 「Presentation Manager (PM )」。
「Presentation Manager」包含了定义点阵图格式的 「图形程式介面」 (GPI)。
然後在Windows 3.0 中 (发布於1990)使用了OS/2 点阵图格式,这时称之
为DIB。Windows 3.0 也包含了原始DIB 格式的变体,并在Windows 下成为标准。
在Windows 95 (以及Windows NT 4.0)和Windows 98 (以及Windows NT 5.0)
下也定义了一些其他的增强能力,我会在本章讨论它们。
DIB 首先作为一种档案格式,它的副档名为.BMP,在极少情况下为.DIB。
Windows 应用程式使用的点阵图图像被当做DIB 档案建立,并作为唯读 源储存
在程式的可执行档案中。图示和滑鼠游标也是形式稍有不同的DIB 档案。
程式能将DIB 档案减去前14 个 元组载入连续的记忆体块中。这时就可以
称它为 「packed DIB (packed-DIB)格式的点阵图」。在 Windows 下执行的应
用程式能使用packed DIB 格式,通过Windows 剪贴簿来交换图像或建立画刷。
第 669 页
Programming Windows 程式开发设计指南(Windows95 程序设计 第五版)
程式也可以完全存取DIB 的内容并以任意方式修改DIB。
程式也能在记忆体中建立自己的 DIB 然後把它们存入档案。程式使用 GDI
函式呼叫就能 「绘制」这些 DIB 内的图像,也能在程序中利用别的记忆体 DIB
直接设定和操作图素 元。
在记忆体中载入了 DIB 後,程式也能通过几个Windows API 函式呼叫来使
用DIB 资料,我将在本章中讨论有关内容。与DIB 相关的API 呼叫是很少的,
并且主要与视讯显示器或印表机页面上显示DIB 相关,还与转换 GDI 点阵图物
件有关。
除了这些内容以外,还有许多应用程式需要完成的 DIB 任务,而这些任务
Windows 作业系统并不支援。例如,程式可能存取了24 元DIB 并且想把它转
化为带有最佳化的256 色调色盘的8 元DIB,而Windows 不会为您执行这些操
作。但是在本章和下一章将 您显示Windows API 之外的操作DIB 的方式。
OS/2 样式的DIB
先不要陷入太多的细节,让我们看一下与首先在OS/2 1.1 中出
文档评论(0)