jiangsheng(蒋晟):
用IE控件浏览不能对图片进行操作
用IE控件浏览不能对图片进行操作
解决方案 »
- 关于菜单变灰色的问题
- 各位大哥,进来给看看这个控件问题,谢谢拉
- 多线程建立TCP连接,消息收,发的问题?
- 怎样解决变量类型定义的问题,在线等,谢谢~~~~~~~~~~~~~~
- 高分求助与加密机建立socket失败,附源代码!
- 请问如何用Wininet API下载网页
- 能编译,但不能执行!!!为什么???
- 图像可以进行有损压缩的主要依据是什么? 多媒体考试题目,帮帮我呀!
- First-chance exception in mytest.exe (NTDLL.DLL): 0xC0000005: Access Violation.是什么原因造成?
- 有谁用ado和vfp(也就是对dbf表)结合编程?请教几个问题!!!特特急!
- vc怎么能够调用java的程序!!!!!!!!!
- 椭圆填色问题!!!
一下的代码可以显示BMP、JPG、GIF,但PNG就不行了,有知道显示PNG的代码吗?请高手相助!!!!!void CPICView::OnDraw(CDC* pDC)
{
CPICDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
IPicture *pPic;
IStream *pStm; CFileStatus fstatus;
CFile file;
LONG cb;
//m_PicFile可以是BMP、JPG、GIF,但PNG就不行了
if (file.Open(m_PicFile,CFile::modeRead)&&file.GetStatus(m_PicFile,
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!");
}
www.paintlib.http://www.paintlib.de/paintlib/
有源代码
(不知道能不能解决你的问题,自己琢磨吧,有问题再问[email protected])