HGE使用GDI绘制中文字体
来源:互联网 发布:编程器使用教程 编辑:程序博客网 时间:2024/05/01 02:35
其实这个没什么技术含量。这个技术在我自己的引擎Edge2d中被实现了,这里把其核心部分迁移到HGE中。
大致原理就是:利用GDI将文字信息写到HGE的纹理上(本质也就是DX8纹理),然后再绘制HGE纹理到屏幕上。关键效率的处理在于,使用一个缓存保存这些纹理。每次绘制一个文字时,就查询该文字对应的纹理是否被创建,是的话就直接从缓存中取出纹理然后绘制,否的话就立即创建该纹理并保存纹理到缓存中。
核心思想也就是这样,这里上传个DEMO,有兴趣的人可以拿去完善。我是纯碎无聊,随便写写。其实这个方法跟之前使用Free Type原理是一样的。只不过这个方法是使用的GDI来绘制字体到纹理。考虑到HGE本身就是基于WINDOWS平台的,所以这里使用GDI完全不存在跨平台的因素----本身HGE就不跨平台,作为其扩展,当然也没必要跨平台了。
顺便打个广告,Edge2d是跨平台的。但是其插件可以不跨平台,所以Edge2d中使用这个技术实现的TTFont插件也就仅在WINDOWS平台炫炫了。
demo下载(含代码):
http://blog.blogwhy.com/azjex/upload/hgegdifont.rar
- HGE使用GDI绘制中文字体
- 使用GDI绘制点
- 使用GDI绘制直线
- 使用GDI绘制矩形
- 使用GDI绘制点
- 使用GDI绘制直线
- 使用GDI绘制矩形
- 使用GDI绘制假按钮
- 使用GDI绘制简单曲线
- 使用GDI+绘制验证码
- 使用GDI绘制验证码
- 使用GDI绘制验证码
- 使用Windows GDI绘制图形
- 使用GDI绘制验证码
- 使用 GDI+ 绘制有间距的文本
- 使用GDI+ 绘制可旋转的PNG
- 在vc2010内使用GDI绘制直线
- 使用gdi+绘制缩放位图的问题
- 企业ERP项目投资总体成本控制及解决
- Tiny-OS Programming/八种常用设计模式
- 各种数据库如何读取前N条记录
- 从SQL 数据库中读取和存入图片问题
- NT主要内核结构 windows 2003
- HGE使用GDI绘制中文字体
- void main(void) - the Wrong Thing
- Windows API一日一练(76)GlobalAlloc函数
- java垃圾收集器
- 用 MSN 照片转卡通 服务 制作了自己的签名照片
- 利用 .NET Printing 命名空间从 Windows 窗体应用程序中进行预览和打印
- C#基本语法问题集锦
- 在JSP中访问数据库大全
- 三星sgh-e258手机GRPS设置