void CPicSizeDlg::OnGetsize()
{
UpdateData(TRUE);
//m_strFile是位图文件的路径
if(m_strFile == "")
{
AfxMessageBox("请选择文件");
}
CFile file;
if( !file.Open( m_strFile, CFile::modeRead) )
return ;
BITMAPFILEHEADER bmfHeader;
//读位图文件头信息
if (file.Read((LPSTR)&bmfHeader;, sizeof(bmfHeader)) != sizeof(bmfHeader))
return ;
//判断是否是BMP
if (bmfHeader.bfType != ((WORD) ('M' << 8) | 'B'))
return ;
//读位图头信息
BITMAPINFOHEADER bmiHeader;
if (file.Read((LPSTR)&bmiHeader;, sizeof(bmiHeader)) !=sizeof(bmiHeader))
return ;
//获得大小信息,并显示
int bmWidth=bmiHeader.biWidth;
int bmHeight=bmiHeader.biHeight;
m_strWidth.Format("宽度:%d",bmWidth);
m_strHeight.Format("高度:%d",bmHeight);
UpdateData(FALSE);
}
评论10
最新资源