显示“BMP”图片和“ICON”图标
1:图片和图标的显示比较简单,目前不支持压缩和放大显示
2:头文件是“HglgPrit.h”,主要接口有如下所示
3:保存图片
原型:BOOL far SaveBmpFile(int nX,int nY, int nWidth,
int nHeight, char *pStr);
作用:将指定的屏幕区域内容存贮为256色的BMP文件。
(1)用“Bmp\Bmp256.Pal”文件作为调色板。
(2)在任何窗口按下F3,会在当前目录下生成“a.Bmp”256色BMP文件。
入口参数:int nX – 左上角X坐标
int nY – 左上角Y坐标
int nWidth – 区域宽度
int nHeight – 区域高度
char* pStr – BMP文件名
出口参数:无
返回值:成功为TRUE,否则为FALSE
3:显示图片
原型:BOOL DisplayBmpFile(int nX, int nY, char *pStrFile,
BOOL bPalette = FALSE, BOOL bBack = TRUE, int
nBackColor = BLACK);
作用:显示BMP图片。
入口参数:int nX – 图片的左上角X坐标
int nY – 图片的左上角Y坐标
char*
pStrFile – BMP文件名
BOOL
bPalette – TRUE修改调色板,否则不修改,严禁修改。
BOOL bBack – 是否显示背景色。FALSE时背景色由nBackColor指定。
int nBackColor -背景色颜色,只要在bBack = FALSE时,才有意义。
出口参数:无
返回值:成功返回TRUE。
3:显示图片
原型:BOOL far DisplayBmpFile(int nX, int
nY, CXmsMemory* pXmsMemory,
DWORD lgLocation = 0, BOOL bPalette=FALSE,
BOOL bBack = TRUE,int nBackColor = BLACK);
作用:显示BMP图片。
入口参数:int nX – 图片的左上角X坐标
int nY – 图片的左上角Y坐标
CXmsMemory*
pXmsMemory – 扩展内存
DWORD
lgLocation - 图形文件在扩展内存的位置索引。
BOOL
bPalette – TRUE修改调色板,否则不修改,严禁修改。
BOOL bBack – 是否显示背景色。FALSE时背景色由nBackColor指定。
int nBackColor -背景色颜色,只要在bBack = FALSE时,才有意义。
出口参数:无
返回值:成功返回TRUE。
举例:现在需作动画,由3幅BMP文件组成,分别为File_01.Bmp、File_02.Bmp、File_03.Bmp,程序每隔1秒钟更换一次。
CXmsMemory mXmsMemroy;
mXmsMemroy.MallocXms (100L *
1024L);
DWORD dwsLocation[3] = {0, 0,
0};
DWORD dwLoc = 0, dwSize = 0;
//将第一个BMP图片装入到“0”处
DwsLocation[0] = dwLoc
mXmsMemory.AddFile(“File_01.Bmp”,
dwLoc, &dwSize);
dwLoc += dwSize;
//将第二个BMP图片装入到下一处
DwsLocation[1] = dwLoc
mXmsMemory.AddFile(“File_02.Bmp”,
dwLoc, &dwSize);
dwLoc += dwSize;
//将第三个BMP图片装入到下一处
dwsLocation[2] = dwLoc
mXmsMemory.AddFile(“File_03.Bmp”,
dwLoc, &dwSize);
dwLoc += dwSize;
int nPage = 0;
while (1)
{
::DisplayBmpFile(0, 0, &mXmsMemory,
dwsLocation[nPage++]) ;
if (nPaqe >= 3)
{
nPage = 0;
}
::KernelDelay(1000);//1秒钟,
}
mXmsMemory.FreeXms();
4:显示图标
原型:CRect DisplayIcon(int nX, int nY, char* pStrFile,
int nPage, BOOL bDisplay, BOOL bPalette);
作用:显示ICON图标。
入口参数:int nX – 图标的左上角X坐标
int nY – 图标的左下角Y坐标
char*
pStrFile – ICON文件名
int nPage –帧索引(注:在ICON里面可以有许多帧图片)
BOOL
bDisplay – 显示控制。FALSE表不显示出来。
BOOL
bPalette – TRUE修改调色板,否则不修改, 严禁修改。
出口参数:无
返回值:成功返回矩形值。
矩形的CRect::nRight纪录了第“Page帧”图标的宽度。
矩形的CRect::nBottom纪录了第“Page帧”图标的高度。