TIF?它的数据有6-7种编码格式,不压缩的还好说,压缩的就有G3、G4、HUFFMAN、JPEG等等格式,建议找一份TIFF文档看看,我这里也有,如果要,Mailto:[email protected]
解决方案 »
- 在线求助:怎么样在多文档中通过对话框创建子窗口
- VC的应用程序能否访问内核函数?好像是能吧?
- vs2005调试发生怪事?
- .lib里面怎么添加资源?
- 求教: 怎么看<<windows程序设计>>(就是很经典的那本)?希望好心人给点建议
- 一个数组在单文档客户区内输出的问题,不能换行怎么办?
- 8848.com 高薪招聘VC/MFC程序员
- DIB的问题
- 求学习VC++数字图像处理的视频教程
- 基于对话框的ocx,对话框上的控件状态怎么传递给容器
- KAO! CSDN里的高手 111222 做网站蒙着眼睛做,太不可思议了.............
- 如何将一个.txt文件的内容直接显示在一个RTF框中?(十万火急,求助)
注意程序开始时要AfxOleInit初始化OLE
IPicture *pPic;
IStream *pStm; CFileStatus fstatus;
CFile file;
LONG cb; if (file.Open("c:/test.tif",CFile::modeRead)&&file.GetStatus("c:/test.tif",
fstatus)&&
((cb = fstatus.m_size) != -1))
{
HGLOBAL hGlobal = GlobalAlloc(GMEM_MOVEABLE, cb);
LPVOID pvData = NULL;
if (hGlobal != NULL)
{
if ((pvData = GlobalLock(hGlobal)) != NULL)
{
file.ReadHuge(pvData, cb);
GlobalUnlock(hGlobal);
CreateStreamOnHGlobal(hGlobal, TRUE, &pStm); if(SUCCEEDED(OleLoadPicture(pStm,fstatus.m_size,TRUE,IID_IPicture,(LPVOID*
)&pPic)))
{
OLE_XSIZE_HIMETRIC hmWidth;
OLE_YSIZE_HIMETRIC hmHeight; pPic->get_Width(&hmWidth);
pPic->get_Height(&hmHeight); double fX,fY;
fX = (double)pDC->GetDeviceCaps(HORZRES)*(double)hmWidth/((double)pDC->Ge
tDeviceCaps(HORZSIZE)*100.0);
fY = (double)pDC->GetDeviceCaps(VERTRES)*(double)hmHeight/((double)pDC->G
etDeviceCaps(VERTSIZE)*100.0);
if(FAILED(pPic->Render(*pDC,0,0,(DWORD)fX,(DWORD)fY,0,hmHeight,hmWidth,-h
mHeight,NULL)))
AfxMessageBox("Failed To Render The picture!");
pPic->Release();
}
else
AfxMessageBox("Error Loading Picture From Stream!");
}
}
}
else
AfxMessageBox("Can't Open Image File!");