DIB位图的显示速度问题 我要实现放大缩小,我现在是这么做的,先用SetDIBitsToDevice或者SetDIBits把DIB转换位DDB显示在内存DC中,不放大,然后再用StretchBlt放大,这样比直接用StretchDIBits放大DIB位图速度要快些,但是现在速度还是不理想,不知道有没有更快的方法 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我以前就是用DirectX做的,也差不多的,最主要的是在窗口模式下不能使用调色板,每个点要用4个字节存储,太浪费了,对点的操作也没有1个字节的方便,所以就放弃了 先用StretchDIBits放大到内存DC里面,再BitBlt。 先用StretchDIBits放大到内存DC里面,再BitBlt。----------------好办法 cnzdgs 的方法可行。你不妨試一下。 速度不理想,我想问题应该出在DIB位图的显示上 搞错了,czdgs说的是我以前用的方法,没有DIB转DDB这一步,直接放大到内存DC,然后在BITBLT到真实DC,这样速度要比我现在说的方法慢 名字写错了,抱歉,cnzdgs,顺便问一下,dgs是什么意思啊,在驱网上看到不少 你所说的速度是指哪些过程的速度?是界面刷新还是从DIB到界面刷新完或者其它?另外最好再描述一下程序要实现的是什么,以便大家理解问题。以前也有人问我dgs是不是公司缩写,可能确有这家公司,不过在我ID中没有特殊含义。 就是把DIB位图显示到内存DC的速度,我要问的是这个,用哪个函数效率更高些?我的程序要实现的是DIB位图的放大缩小功能 如果图像文件大,最好用个临时文件。这个文件里存的是该图像的按照比例缩小后的图像。当你放大或缩小时,直接去这个临时文件中找相应比例的图像就行,省去了Stretch部分的开销。当然,在加载图像时会增加一些开销 StretchBlt的速度应该是很快的,我试了下DrawDibDraw放大的速度,不如StretchBlt 楼主如果觉得SetDibToDevice速度还不错的话,那么应该考虑自己实现Stretch,自己实现不是说一定要自己写Stretch代码,网上找找也行啊,看看有没有用MMX优化过的算法,估计应该有的。这样缩放的速度优化问题就有更多可控的选择了。 MFC声音频率的分析程序,如何使时间信号转变成为频率信号。有这样的函数吗? 我重启动了explorer.exe之后,为什么桌面的设置变了 vc6中 stl 的各种文件放在哪?(基础题目) 请问: 发现一个问题 请问一下,擦除原来画的图像的函数是什么? IMAGEHLP_CBA_READ_MEMORY结构一文 怎么改变html中图片大小? chtmlview中隐藏浏览器滚动条有时候成功有时候失败呢 web打印控件 VS2005编译器报:"* * *" is not a class or namespace name TCP通信中,客户端发送文件内容到服务器端的实现...
----------------
好办法
你不妨試一下。