一、实例说明:
锐化效果主要是增加图像的亮度,增强图像的鲜艳感。本实例将实现使一幅图像锐化显示,可以通过菜单显示锐化图像,如下图所示。
二、关键技术说明:
锐化算法主要是指通过制定像素加上其与相邻像素的颜色差来实现。本例使用了vfw库中的DrawDibDraw方法来实现了真彩色图像的绘制。首先程序需要将位图资源加载到资源中,然后通过CreateDIBSection这个API函数获取位图资源的二进制图像数据。图像二进制数据是由图像每个像素的R、G、B颜色值组成的,通过循环语句修改每个像素的颜色,进而达到锐化效果,最后通过DrawDibDraw方法将修改的图像数据绘制到设备上下文中。
DrawDibDraw方法可以将二进制图像数据显示到指定的设备上下文中,语法如下:
BOOL DrawDibDraw(HDRAWDIB hdd,HDC hdc, int xDst, int yDst,
int dxDst, int dyDst, LPBITMAPINFOHEADER lpbi, LPVOID lpBits,
int xSrc, int ySrc, int dxSrc, int dySrc, UINT wFlags);
其中参数说明如下:
hdd:指定DrawDib设备上下文句柄
hdc:指定设备上下文句柄
xDst:指定目标区域左顶点X轴坐标