基于symbian的图形图像操作

基于symbian的图形图像操作

ID:37184329

大小:1.13 MB

页数:6页

时间:2019-05-21

基于symbian的图形图像操作_第1页
基于symbian的图形图像操作_第2页
基于symbian的图形图像操作_第3页
基于symbian的图形图像操作_第4页
基于symbian的图形图像操作_第5页
资源描述:

《基于symbian的图形图像操作》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、http://www.paper.edu.cn基于Symbian的图形图像操作温达,徐惠民北京邮电大学计算机系,北京(100876)E-mail:coldmeal729@gmail.com摘要:Symbian成立于1998年,是以NOKIA为首的各手机厂商合伙开发的一个操作系统,代表全球智能手机行业标准的操作系统,主要用于高端的智能手机。其开发语言为C++。Carbide.c++是Nokia和Eclipse基金会合作的产物,主要用于Symbian平台开发。把Carbide理解成Eclipse+CDT+Nokiaplug-in也是可以的。只是Nokia把

2、这几个组合进行了打包,免去了一些繁琐的安装配置过程。SymbianAPI已经集成了大量己定义好的图形操作方法。本文就以Carbide.c++作为系统开发平台,来实现一个位图处理程序。该程序实现了图形绘制,图形操作,图形存储、文字编辑等功能。关键词:图形绘制;图形操作;CarbideC++1.31.引言FontandBitmapServer是SymbianOS比较重要的服务,它主要是用来管理字体和位图,使用高度优化的汇编代码编写的,可以提供良好快速的图形绘制能力,可以在系统中所有的线程之间共享,通过RFbsSession类来访问FBS。它是由window

3、server生成的,通过CFbsFont和CFbsBitmap类来操作,CFbsBitmap和CFbsFont都是FBS的一个Client句柄,它们提供了管理字体和位图的方法,实际的数据是存放在FBS上,数据仅仅保留一[1]份,而Client句柄可以有多个引用。位于ROM的Bitmap是可以直接使用,基于文件的Bitmap需要加载到RAM后才能使用,在RAM里面的Bitmap和Font都仅有一个实例,它通过引用计数器而被多个Client引用。对于大部分的应用程序来说FontandBitmapServer是被隐藏在WindowServer里面,Serve

4、r默认已经完成了对FBSServer的初始化操作。对于Exe程序或者其他工作线程用户可以通过RFbsSession::Connect来连接server。服务最常见的应用就是贴图,而贴图和画图等操作都是通过CFbsBitmap这个FBS的Client对象来实现的,有点类似于Windows上的HBITMAP。一般都通过CFbsBitmap::DataAddress来获取内存地址,通过GetScanLine获取一个指定的scanline。位图也根据他们的大小以4kb为界限在FBS上分为两个不同的堆。位于LargeBitmap的heap可以进行自动的磁盘碎片整

5、理(在某些特殊的系统事件发生时候其他线程可能会进行Heap的整理,从而导致数据错位),因此这个堆是需要被lock/unlock的,在低版本的S60SDK中提供了TBitmapUtil来进行堆的锁定和解锁,有位图的内容被编辑时,我们需要锁定堆。高版本的SDK提供了LockHeap和UnlockHeap完成这个操作,CFbsBitmap的drawing和拷贝等内部操作都提供了自动锁定的功能。目前比较常用的位图操作类有以下几种:CFbsBitmapDevice,CFbsBitGc,CFbsBitmap,CFbsFont。为了在设备上下文中使用CFbsBitm

6、ap对象,必须先将CFbsBitmap对象选入设备CFbsBitmapDevice,再用CFbsBitmapDevice对象初始化CFbsBitGc。这样开始的CFbsBitmap对象就可以被CFbsBitGc对象操作了。在CFbsBitmapDevice对象选入CFbsBitmap的过程中,CFbsBitmap会把逻辑空间的对象映射到设备空间的对象。CFbsFont用于设置字体。在进行文字绘制前,必须设置好字体才能使用,否则编译虽然不会报错,但是在程序执行的时候文字不会正常显示。-1-http://www.paper.edu.cn2.Carbide.

7、c++图形绘制2.1Carbide.c++图形绘制类应用程序绘制图形时,必须要使用图形设备和图形上下文。图形设备是绘制操作的对象(如屏幕、打印机等),图形设备上下文提供了一种设备的抽象机制从而完全屏蔽了具体的图形设备,应用程序在使用这些图形设备时只需要和这些抽象的图形设备类交互即可,而不必考虑其具体的设备。图形上下文是绘画平台及绘画所需要工具的集合体,它还包括平台的尺寸、方向、颜色和所有能实现绘画想象力的附件。[2]下面为Symbian中使用的图形设备及其功能,它们是实现绘画的基础。表2-1Symbian下的图形设备图形设备描述CGraphicsDev

8、ice图形设备的基类CBitmapDevice位图化图形设备的基类CFbsDevice使用字体

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。