在前面文章中阐述了用CImage类绘图,和绘制放大镜,如果设置HALFTONE此模式,图像才不会失真,但是放大镜上面显示的图像会出现白色斑点,在window sever操作系统中运行,白色斑点不会出现,目前测试在window 7操作系统中发现任然有此问题,而且使用HALFTONE模式显示jpg图像,虽然不失真,但是显示效率明显很慢,放大镜移动起来,视觉效果很差。
针对前面的显示问题,使用网上流传的CPicture类来实现jpg图像的显示以及放大镜功能,可以很好的解决此问题。
CPicture类如下:
#ifndef PICTURE_H
#ifndef picture_h
#define PICTURE_H
#define picture_h
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
class CPicture
{
public:
CPicture();
virtual ~CPicture();
public:
BOOL LoadPicture(UINT nResource, LPCTSTR lpszResType)
{return LoadPicture(MAKEINTRESOURCE(nResource), lpszResType);}
BOOL LoadPictureFromFile(LPCTSTR lpszFileName);
BOOL LoadPicture(LPCTSTR lpszResource,LPCTSTR lpszResType);
BOOL IsValid(