社区
游戏开发
帖子详情
关于大位图显示的问题
qiling1979
2003-08-23 02:20:53
我的程序是在win2000 窗口模式下(1600*1200)(不是全屏方式)我有一个很大的bitmap6000*6000*16色 我要把他显示在我的窗口,如果用windows gdi 缩放的话
太慢了 则么才能显示快一点呢?
...全文
59
14
打赏
收藏
关于大位图显示的问题
我的程序是在win2000 窗口模式下(1600*1200)(不是全屏方式)我有一个很大的bitmap6000*6000*16色 我要把他显示在我的窗口,如果用windows gdi 缩放的话 太慢了 则么才能显示快一点呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用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游戏编程系列之1:GUI窗口界面编程及游戏入门实战
我将带领大家来系统学习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贪吃蛇游戏实战
STM32——EMWIN
位图
显示
(四)
EMWIN 文章目录EMWIN前言一、
位图
转换器二、
位图
绘制 API 简介1.GUI_DrawBitmap()2.GUI_DrawBitmapEx()三、实验代码 前言 很多情况下我们需要在 LCD 上
显示
图片,本章我们就看一下如何使用
位图
转换器将图片转换为 C 文件,然后调用 emWin 中的相应函数来
显示
这个 C 文件
位图
。 一、
位图
转换器 一般而言,emwin能够在任何
显示
器位置
显示
所有
位图
图像,使用emwin
显示
位图
的时候需要先用
位图
转换器将要
显示
的图片转换为
位图
数组。在ST官网下载的STemWin
关于fairygui在unity的
位图
字体
显示
错误的
问题
在fairygui创建的
位图
字体,在fgui编辑器中
显示
一切正常,但在unity中发现有时候会发现
显示
错乱,经过对比,发现
显示
错乱是因为包的图片太多导致。也就是说,我们假设
位图
字体是0-9,
位图
字体也是打包成图集导入到unity中,当图片比较多或者图片比较大的时候图集被拆成了两个部分,这时可能导致
位图
中的0-4在图集1,5-9在图集2,这样0-4
显示
正常,5-9
显示
则不错乱(推测
显示
的是5-9坐标在图集1的位置)。 解决方式: 1:拆解包体,把包拆解成几个小包,尽量确保在一个包只有一个图集。 2:
位图
字体单
位图
和矢量图
对比 产生方式:
位图
是直接量化的原始信号,通常由扫描仪、数码相机、摄像机、录像机、光盘以及其它的数字化设备生成;矢量图是由软件生成的抽象的成果。 基本元素:
位图
是由像素点阵构成的;矢量图是采用图元描述。 文件大小:
位图
比较大,文件大小与图的分辨率和像素颜色有关;矢量图一般比较小,文件大小与图的复杂程度有关。
显示
速度:
位图
显示
速度较快,其
显示
速度与图的分辨率有关;不采用硬件加速的话,
MFC在图片控件
显示
位图
与动态调整适合控件的
显示
大小
在窗口的DC之外,可以建立自己的DC,就是说它不对应窗口,这个方法就是CreateCompatibleDC,这个DC就是一个内存缓冲区,通过这个DC你可以把和它兼容的窗口DC保存到这个DC中,就是说你可以通过它在不同的DC之间拷贝数据。例如:你先在这个DC中建立好数据,然后在拷贝到窗口的DC就是完成了这个窗口的刷新。屏幕上的没一个窗口都对应一个DC,可以把DC想象成一个视频缓冲区,对这这个缓冲区的操作,会表现在这个缓冲区对应的屏幕窗口上。用到StretchBlt这个函数。StretchBlt,函数名。...
游戏开发
8,304
社区成员
23,682
社区内容
发帖
与我相关
我的任务
游戏开发
游戏开发相关内容讨论专区
复制链接
扫一扫
分享
社区描述
游戏开发相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章