社区
嵌入开发(WinCE)
帖子详情
关于IImage.Draw的速度
xyuanzhi
2007-01-11 12:20:28
在PPC2005上调用Imaging API
IImagingFactory *fac = .........(创建com)
IImage *image;
fac.CreateImageFromFile ("filename", &image)
image->Draw (hdc, &dstRect, NULL);
结果一张480*160的png图片居然用了140多tickcount来draw.
(同时调用多次draw,每次都要100毫秒)
有什么好的解决方法阿
...全文
230
2
打赏
收藏
关于IImage.Draw的速度
在PPC2005上调用Imaging API IImagingFactory *fac = .........(创建com) IImage *image; fac.CreateImageFromFile ("filename", &image) image->Draw (hdc, &dstRect, NULL); 结果一张480*160的png图片居然用了140多tickcount来draw. (同时调用多次draw,每次都要100毫秒) 有什么好的解决方法阿
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
qwqwqw408
2009-09-22
打赏
举报
回复
分要给我喔
qwqwqw408
2009-09-22
打赏
举报
回复
现在内存中创建DC,draw到内存DC,然后bitblt到目标DC,不仅速度快,还可以实现很多效果。我的数码相框就是这样做的
HDC m_hdc = GetDc(NULL);
HDC hMenDc = CreateCompatibleDC(NULL);
HBITMAP hBmp = CreateCompatibleBitmap(hMenDc,800,600);
HGDIOBJ hOldBmp = SelectObject(hMenDc,hbmp);
RECT rc;
rc.left = 0;
rc.top = 0;
rc.bottom = 800;
rc.right = 600;
pImage->Draw(m_hdc,&rc,NULL);
BitBlt(m_hdc,rc.left,rc.top,800,600,hMenDc,0,0,SRCCOPY);
SAFERELEASE(pImage)
SelectObject(hMenDc,hOldBmp );
DeleteObject(hBmp );
DeleteDC(hMenDc);
以上是代码,至于效果,就不发了
关于I
Image
的图片显示(闪屏的处理)
之前发过帖子询问关于绘制窗口时的问题,A,B窗口互相独立,B弹出时会覆盖A,B隐藏时覆盖A的部分会刷白,之后在网上查询过资料后找到了解决的问题。因为A,B窗口都是贴了PNG的图片,PNG用PS修饰之后可以显示透明的效果,于是就用了I
Image
绘制。关于IIamge网上有许多资料,大家可以查阅。后来发现刷屏的问题是由于I
Image
在
Draw
的时候
速度
太慢,然后看了下面的链接,然后就解决刷屏慢的问题了
详聊I
Image
的图片显示
详聊I
Image
的图片显示
I
Image
的图片显示
//========================================================================//TITLE:// 详聊I
Image
的图片显示//AUTHOR:// norains//DATE:// Sunday 26-August-2007//Environment:// EVC4.0 + Windows CE
BREW 初级开发者教程 笔记
第九章 I
Image
I
Image
接口主要用于图片的显示和动画的播放 绘制图片:I
IMAGE
_
Draw
()、I
IMAGE
_
Draw
Frame()、I
IMAGE
_
Draw
Offscreen()播放动画:I
IMAGE
_Start()、I
IMAGE
_Stop() 设置属性:I
IMAGE
_SetAnimationRate()、I
IMAGE
_Set
Draw
Size()、IIM
移动平台图像显示
I
Image
组件是在wince5.0新加入的,它可以调用公共接口来显示多种图片格式(jpg,png,gif,bmp),并且还可以扩展用以支持更多图片.但也许是因为新加入的原因,尚存在不少问题,其中编译的error link 2005就令人非常头痛. 首先让我们先来看看一个能够编译通过的最简单I
Image
的用法: /////////////////////////
嵌入开发(WinCE)
19,502
社区成员
41,568
社区内容
发帖
与我相关
我的任务
嵌入开发(WinCE)
硬件/嵌入开发 嵌入开发(WinCE)
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章