一、 引言
当我们想仔细观察某个细微的东西时,一般都会使用放大镜。而要看清显示在
计算机屏幕上的图片或文字时通常也可以借助于 操作系统附带的放大
程序来实现。但该程序只能以固定的放大倍数去进行观看,有时并不能满足我
们的需要。本文就通过 基本类库提供的 函数来实现对屏幕图象
的局部放大,并且可以随意放大、缩小,选取到合适的放大倍数来对图像的细
节进行观察。
二、 设计与实现
本程序主要用来对图像的局部进行可调倍数的放大,应当具有以下主要功能:
移动 放大显示图像的不同部位
左击增加放大倍率、右击减少放大倍率。
从光学角度来看,对物体的放大成像是通过把较小的真实物体显示成尺寸较大
的虚像来实现的。因此我们可以用类似的原理,把图像中待放大的区间从较小
的显示范围拉伸到一个比较大的显示范围即可达到图像放大的效果,两个区间
的比值也就是图像的放大倍率。可以通过缩小源区间的范围或扩大放大区间的
范围来实现放大倍率的调整。在 基本类库中提供有 类的 函
数可以将一幅位图从一个源矩形以一定的光栅操作拷贝到另外一个不同大小的
目标矩形中去,因此可以用此函数来实现图象放大的功能,其函数原形声明如
下:
目标矩形的坐标原点
!" 目标矩形的长度和宽度
#$ 源设备环境句柄
源矩形的坐标原点
!" 源矩形的长度和宽度
%%$&' 光栅操作标志
当指定的源和目标矩形的宽度或高度不一样时, 函数将创建一个位图
的镜像。如果是宽度有变化,就沿 轴创建镜像;如果是高度上有变化就沿
轴创建镜像。而且该函数可以在内存中对源图象做拉伸或压缩处理后再拷贝到
目标矩形中去。
为 ()*"+ 增加以下成员数据:
,-,,).-',,,
,-,,).-/',,,
,)*$,,#,,).$)*$',,,
,,,#,,).$)',,,
,,,',,, 确定被放大区域,
, 确定放大显示区域,放大倍率0 ,,,
,1,,2',,,
,",,)**'
在资源中加入自己喜欢的位图并设为 (.(345