关于大位图显示的问题

qiling1979 2003-08-23 02:20:53
我的程序是在win2000 窗口模式下(1600*1200)(不是全屏方式)我有一个很大的bitmap6000*6000*16色 我要把他显示在我的窗口,如果用windows gdi 缩放的话
太慢了 则么才能显示快一点呢?
...全文
59 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
qiling1979 2003-09-22
  • 打赏
  • 举报
回复
哦 thank
寻开心 2003-09-02
  • 打赏
  • 举报
回复
就是这里的啊
http://www.gameres.com/Articles/Visual/Other/BmptoVC.htm
qiling1979 2003-09-02
  • 打赏
  • 举报
回复
具体是啥方法?
寻开心 2003-08-30
  • 打赏
  • 举报
回复
试过使用显示视频方式的办法了吗?那个应该快的。
qiling1979 2003-08-29
  • 打赏
  • 举报
回复
idle
寻开心 2003-08-28
  • 打赏
  • 举报
回复
那也是18M啊。

估计传输的速度比你显示的还要慢呐。

显示窗口大小是否时刻在变化呐?
如果不是,你可以自己判断位图变化的范围,只更新变化的局部内容,不去每次都缩放整个图片。
寻开心 2003-08-27
  • 打赏
  • 举报
回复
疯啦。
网络传输那么大的位图,能承受吗????
6000×6000×16位(2字节)=72MB太大了吧。
qiling1979 2003-08-27
  • 打赏
  • 举报
回复
是16色4位 压缩过的数据
qiling1979 2003-08-26
  • 打赏
  • 举报
回复
位图数据是一直在变 是网络送来的

寻开心 2003-08-26
  • 打赏
  • 举报
回复
http://www.gameres.com/Articles/Visual/Other/BmptoVC.htm
这里面的用视频方式显示位图的办法也是一个好思路,可以参考。
寻开心 2003-08-25
  • 打赏
  • 举报
回复
所谓的实时不是要求你每次都要从最原始的图片变化下来啊。
你完全可以仿照MIPMAP的原理或者是LOD的方法,先把图片做好几个1/2 1/4 1/8 1/16这样大小的图片保存起来,而外增加的存储量加起来也不到原来的1/2倍。
(每个方向缩小1/2图片占据空间大小是原来的1/4, 所以总和是小于1/2)
拉伸的时候,从最接近目标比例的图片开始入手操作。例如要压缩到原来的1/3,你可以从1/2的图片开始压缩。速度快的多。
DarthVader 2003-08-24
  • 打赏
  • 举报
回复
寻开心说得对啊,
缩放并不需要实时的作。
使用GDI的StretchBlt先将大位图缩放到一个Surface上,只需要作一次。
之后直接Blt那个surface就可以了,想必不会慢到哪里去;

如果要使用的surface仍旧比窗口大,根据窗口相对于位图表面的位置,
设置一下裁剪矩形就可以了,每次Blt的尺寸还是窗口大小,应该也不会慢;

如果真的要实时进行任意的无级缩放,觉得GDI太慢,就自己写个缩放函数吧
(记得当时有两个同学搞Palm OS上的缩放,最后没办法,准备了同一图片的
不同分辨率版本,也算是过关了 :P )
qiling1979 2003-08-24
  • 打赏
  • 举报
回复
因为这张图是时时在变的 需要实时缩小
寻开心 2003-08-23
  • 打赏
  • 举报
回复
非要实时的做吗?
为什么不先用其他软件把它缩小,然后直接使用呐。你可以先生成几个半大的图片。

一般保留大图片是为了可以放大地看,或者是拖动着看。
我将带领大家来系统学习Windows的窗口编程,包括消息、窗口、GDI绘图、游戏开发等。本课程比较基础,非常适合初学者入门,读者可以边学习边实践。具体的章节目录和课程内容如下所示:---------------------------------------------Windows游戏编程系列之1:GUI界面编程及游戏入门实战1、Windows创建第一个窗口 WinMain入口函数 5进行Windows编程的调试手法 6窗口从哪里来? 7窗口编程的步骤 7窗口编程需要的主要结构 8窗口编程需要的主要API 92、Windows的窗口过程与消息机制 如何留住窗口? 121)Windows的消息与消息循环 142)消息处理函数与常用消息 17)Windows的窗口过程函数 19 3、GDI编程之设备上下文 1)GDI的通用编程框架 222)GDI的绘图步骤 253)GDI获取设备句柄 254、GDI编程之绘制几何图形 画点、线 28颜色COLORREF 29矩形 29画圆、饼图、弦图 305、GDI编程之自定义画笔画刷画笔简介 32画刷简介 33画笔案例 33画刷案例 346、GDI编程之绘制文字 DrawText函数 35TextOut 函数 (wingdi.h) 36CreateFont函数 37绘制文本案例 377、GDI编程之绘制位图 位图简介 381)在资源中添加位图资源 392)从资源中加载位图: LoadBitmap 393)创建一个与当前DC相匹配的DC(内存DC) 394)将bitmap放入匹配的DC中:SelectObject 405)成像(1:1 比例 ) 406)取出位图 407)释放位图 418)释放匹配的DC 41绘制位图案例 41   8、Windows鼠标键盘消息 一、键盘消息 421、键盘消息 422、消息参数: 423、消息的使用: 424、键盘消息的案例代码 43二、鼠标消息 441、基本鼠标消息 442、双击消息 443、滚轮消息 454、不响应双击消息 45 9、Windows定时器消息 定时器消息介绍 47创建定时器 47关闭定时器 47定时器消息案例代码 4810、GDI游戏之跳舞动画 11、GDI游戏之走路动画 12、GDI贪吃蛇游戏实战  

8,304

社区成员

发帖
与我相关
我的任务
社区描述
游戏开发相关内容讨论专区
社区管理员
  • 游戏开发
  • 呆呆敲代码的小Y
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧