已阅读5页,还剩39页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
太原理工大学毕业设计(论文)用纸i嵌入式FTP客户端的设计与实现摘要FTP即文件传输协议,它是目前Internet上使用的最广泛的文件传送协议。FTP是TCPIP网络和Internet上最早使用的协议之一。用户可以通过自己的PC机与所有运行FTP协议的服务器相连,访问服务器上的信息。FTP客户端可以给服务器发出命令来下载文件,上传文件,创建或改变服务器上的目录等功能。随着嵌入式系统的广泛应用,嵌入式系统对图形用户界面的需求也越来越重要,Qt是一个跨平台的C+图形用户界面应用程序框架,可以在众多嵌入式场合发挥很好的作用。本课题是基于Qt来设计的FTP客户端,该客户端实现了给出Ip地址进行FTP登录,并能查看服务端的文件信息列表,从而对指定文件的上传和下载功能,具有一定的实用性和方便性。关键词:FTP;跨平台;Qt;上传;下载全套设计加扣3012250582太原理工大学毕业设计(论文)用纸ii太原理工大学毕业设计(论文)用纸iiTheDesignAndImplementationOfEmbeddedFTPClientAbstractFileTransferProtocolwhichisthemostwidelyusedprotocolfortransmissionatpresent.FTPisoneoftheearliestprotocolusedinTCPIPnetworkandInternet.ClientscanlinkotherFTPserversinthewordbytheircomputersandvisitlargeamountofinations.FTPclientcanissuecommandstotheservertodownloadfilesuploadfilescreateorchangedirectoriesontheserver.Alongwiththeembeddedsystemthegraphicaluserinterfaceismoreandmoreimportant.QtisacrossplatC+graphicaluserinterfaceapplicationframeworkcanplayagoodroleinmanyembeddedapplications.ThissystemistodesignaFTPclientbasedonQtthisclienttoachieveproducesthecomputerIpaddressforFtplogincheckserver-sidefileinationlistandrealizetothespecifiedfiledownloadhasacertainpracticalityandconvenience.Keywords:FTPprotocol;cross-plat;Qt;FileUploadFileDowload太原理工大学毕业设计(论文)用纸目录摘要.IABSTRACT.II1选题的目的和意义.11.1选题背景.11.2目的和意义.11.3当前发展.21.4所做工作.22相关基础技术与开发平台.32.1QT开发工具简介.32.1.1Qt的主要特性.32.1.2Qt编程机制简介.32.1.3Qt的优势.52.1.4Qtcreator介绍.62.1.5Qt所支持的平台.62.1.6Qt类库.82.2FTP通信协议.102.2.1FTP基本简介.102.2.2FTP工作原理.102.2.3FTP的作用.112.2.4FTP的使用.112.2.5FTP的缺点.123需求分析.133.1设计目的.133.2完成目标.133.3功能需求.133.3.1用户需求分析.133.3.2功能需求分析.133.3.3性能需求.143.4环境需求.143.5界面设计需求.144软件总体分析与设计.154.1系统模块设计.154.2详细设计.164.2.1客户端连接流程图.164.2.2上传子模块流程图.174.2.3下载子模块流程图.184.3系统设计与程序的实现.19太原理工大学毕业设计(论文)用纸4.3.1界面实现部分.194.3.2模块功能的实现.205系统运行及测试.265.1环境的搭建.265.1.1安装QtCreator和Qt框架.265.1.2修改系统的环境变量.275.1.3成功安装后的Qt界面.285.2系统运行.285.2.1运行前分析.285.2.2主要功能运行.295.2.3其他功能.325.3系统测试.345.3.1QTCreator调试器.345.3.2QT调试方法.345.3.3出现的错误及解决方案.355.4小结.35总结.36参考文献.38致谢.39外文原文.40中文翻译.55太原理工大学毕业设计(论文)用纸11选题的目的和意义1.1选题背景现如今人类已经进入了21世纪科学技术的突飞猛进的发展知识经济的初见端倪和Internet技术的迅猛发展与普及,推动了整个世界范围的信息的传输和信息的交流。FTP协议是Internet上最早的应用也是最广泛的应用,直到目前为止它仍然是最重要的同时也是最基本的应用之一,在互联网刚开始发展的时候曾经占据整个互联网通信量的三分之一。FTP主要解决了在不同操作系统下处理文件格式的不兼容的问题,如果用户想使用其他计算机上的文件,最理想的办法就是把它复制到自己的计算机当中,方便在自己的计算机中使用。FTP客户端正是完成这项工作的工具,成千上百万的数据、资料分布在世界各地,有了FTP客户端之后,只要轻点几下鼠标,就可以轻而易举的获得你想要的任何资料。在众多的网络应用中,FTP有着非常重要的地位,在Internet中一个十分重要的就是资源,而各种各样的资源大多数都是放在FTP服务器中的,为了获得这些资源,我们必须使用FTP客户端软件。本毕业设计将介绍FTP客户端系统的设计和开发工作,因此,文章涵盖以下三方面的内容:1.基础技术的介绍;2.文件传输系统的详细需求;3.介绍系统的具体实现;4.对最终系统进行运行测试。通过这次课题,对整个开发过程有深入的了解,提高实践能力。FTP将在未来的很长时间里作为主要的文件传输协议,使用前景仍然宽广,功能会更加强大。1.2目的和意义FTP协议是TCPIP网络上两台计算机传送文件的协议,FTP是在TCPIP网络和INTERNET上最早使用的协议之一。尽管WorldWideWeb(WWW)已经替代了FTP的大多数功能,FTP仍然是通过Internet把文件从客户端复制到服务器上的一种很实用的途径。FTP客户机可以给服务器发出相应的命令来下载文件,上传文件,创建或改变服务器上的目录。原来的FTP软件大多是使用的命令行操作,但是后来有了像CUTEFTP这样的图形界面软件,使得FTP传输变得非常方便易学。主要使用它进行“上载”。即向服务器传输文件。由于FTP协议的传输速度比较快,我们在制作诸如“软件下载”这类网站时喜欢用FTP来实现,同时我们这种服务面向大众,不需要身份认证,即“匿名FTP服务器”。FTP是应用层的协议,它基于传输层,为用户服务,它们负责进行文件的传输。FTP是一个8位的客户端-服务器协议,能操作任何类型的文件而不需要进一步处理,就像MIME或Unicode一样。但是,FTP有着极高的延时,这意味着,从开始请求到第一次接收需求数据之间的时间会非常长,并且不时的必需执行一些冗长的登录进程。选择此课题作为毕业设计,是希望将学习累计的知识用于实践,开发出该系统的各项功能,使用户很简单的就能登录FTP服务器、上传下载数据等功能的需求。与此同时,在开发中学会发现解决问题,提高软件开发能力,为今后的工作、学习、太原理工大学毕业设计(论文)用纸2项目开发累计实践经验。所以选择了使用Qt来开发实现文件传输功能的FTP客户端。1.3当前发展目前为止已经有许多互联网站点已经建立了可供所有人都能访问的资料库,并且这些资料都可以被通过使用FTP来获取。匿名的FTP使得用户有机会存取到世界上最大的信息库,这个信息库都是慢慢日积月累起来的,并且还在有不断的增长的趋势,永远都不会关闭,涉及面也很广,几乎涉及到所有的主题。而且,这一切都是免费的提供每个人下载和使用的。Internet之所以能延续到今天,是因为人们使用通过标准协议提供标准服务的程序。由于FTP提供的文件传输是将一个完整的文件从一个系统复制到另一个系统中。要使用FTP,就需要有登陆服务器的注册账号,或者匿名FTP的服务器来使用。与Telnet类似,FTP最早的设计用于两台不同的主机,这两个主机可能运行在不同的操作系统下、使用不同的文件结构、并可能使用不同的字符集。但不同的是,Telnet获得异构型是强制两端都采用同一标准:使用7比特ASCII码的NVT。而FTP是采用另一种方法来处理不同系统间的差异:FTP支持有限数量的文件类型如ASCII文件,二进制文件等等和文件结构(面向字节流或记录)。1.4所做工作目前在国内外基于FTP的网络通信仍然是Internet上文件传输的通用的方法,就如同当初FTP刚出现的时候,FTP并没有发生多大的变化,但是在Internet迅猛的发展的形势下,其安全问题还是日益突出出来。但是FTP还是非常的流行,大部分的网站以及论坛等等涉及到用户下载的网站都提供了FTP服务,特别是校园中也可以利用FTP服务器来使身处校园中的每个人都可以通过FTP来下载或共享文件,这使得每个人都能享受到网络的便捷。在现如今网络上有许多的FTP客户端类的软件,但是其中大部分都是由于其界面复杂,操作繁琐,不被大多数用户接受,为了更好的利用网络资源,为了方便用户使用FTP,我设计了一个非常简单容易使用用的FTP客户端。太原理工大学毕业设计(论文)用纸32相关基础技术与开发平台QT开发工具简介2.1.1Qt的主要特性Qt是一个跨平台的C+图形用户界面库,是由挪威TrollTech公司开发,目前包括QtX11、基于Framebuffer的QtEmbedded、快速开发工具QtDesigner以及国际化工具QtLinguist等。人们所熟知的Linux下面的KDE环境就是基于Qt开发而成的。Qt支持Unix和Linux系统以及Windows系统。Qt的主要特点有:面向对象,很容易扩展,并且允许真正的组件编程;Qt对各个模块进行了良好的封装,使各模块可重用性较好;优良的跨平台特性,使用Qt类编写的程序可以实现“一次编码,到处编译”,极大的降低了跨平台开发的难度;构件支持,对于对象间通信,Qt没有采用函数回调的方法,而是采用了一种全新并且可选的被称为“信号与槽”的对象间通信机制,通过一个对象信号的发射,另一个槽函数的响应,使各个对象之间的通信安全而且高效。Qt的这些特点使它非常适合于真正的构件编程,同时使各个组件之间的协同工作变得十分简单,并且Qt是直接基于Xlib的,不依赖Motif工具包,所以它的执行效率比一般的基于平台的代码的执行效率要高。Qt类库是一个拥有超过400个的C+类,同时不断扩展的库。它封装了用于端到端应用程序开发所需要的所有基础结构。优秀的Qt应用程序接口包括成熟的对象模型,内容丰富的集合类,图形用户界面编程与布局设计功能,数据库编程,网络,XML国际化,OpenGL集成等。Qt设计者是一个功能强大的GUI布局与窗体构造器,能够在所有支持平台上,以本地化的视图外观与认知,快速开发高性能的用户界面。Qt语言家是一套用来消除国际化工作流程所带来障碍的工具。使用Qt语言家,开发小组可把应用程序的翻译转换外包给非技术性翻译人员,从而可增加精确度,大大加快本地化处理过程。Qt助手是一个完全可自定义,重新分配的帮助文件或文档浏览器,它可与基于Qt的应用程序运行。使用Qt助手,开发小组同样能够很大程度上加快文档的处理过程。2.1.2Qt编程机制简介信号槽机制是Qt的一个最重要的特征并且也许是Qt与其它工具包的最不相同的部分。在图形用户界面编程中,我们经常希望一个窗口部件的一个变化被通知给另一个窗口部件。更一般地,我们希望任何一类的对象可以和其它对象进行通讯。较老的工具包使用一种被称作回调的通讯方式来实现同一目的。回调是指一个函数的指针,所以如果你希望一个处理函数通知你一些事件,你可以把另一个函数(回调)的指针传递给处理函数。处理函数在适当的时候调用回调。回调有两个主要缺点。首先他们不是类型安全的。我们从来都不能确定处理函数使用了正确的参数来调用回调。因此容易造成进程崩溃,另外一个问题是,回调这种方式紧紧的绑定了图形用户接口的功能元素,因而很难把开发进行独立的分类。Qt的信号与槽机制是不同的。Qt的信号与槽均以函数形式出现,Qt的窗口部件有很多预定义的信号,但我们也可以通过继承来加入我们自己的信号。槽就是一个可太原理工大学毕业设计(论文)用纸4以被调用处理特定信号的函数。Qt的窗口部件有很多预定义的槽,但是通常的习惯是你可以加入自己的槽,这样你就可以处理你所感兴趣的信号。我们可以用connect()函数对需要的信号和槽进行连接。当对象的内部状态发生改变,信号就被发射。从某种意义上讲,它们也许对外面的世界感兴趣。这就是所有的对象通讯时所做的一切。它不知道也不注意无论有没有东西接收它所发射的信号。当一个信号被发射,它所连接的槽会被立即执行,就像一个普通函数调用一样(见图2-1)。信号槽机制完全不依赖于任何一种图形用户界面的事件回路。当所有的槽都返回后发射的信号也将返回。信号与插槽机制并不要求类之间互相知道细节,这样就可以相对容易的开发出代码可高重用的类(MatthiasDalheimer2002)。信号和槽的机制是类型安全的:一个信号的签名必须与它的接收槽的签名相匹配。(实际上一个槽的签名可以比它接收的信号的签名少,因为它可以忽略额外的签名。)因为签名是一致的,编译器就可以帮助我们检测类型不匹配。它以警告的方式报告类型错误,而不会使系统产生崩溃。信号和槽是宽松地联系在一起的:一个发射信号的类不用知道也不用注意哪个槽要接收这个信号(JohanThelin2007)。Qt的信号和槽的机制可以保证如果你把一个信号和一个槽连接起来,槽会在正确的时间使用信号的参数而被调用。信号和槽可以使用任何数量、任何类型的参数。它们是完全类型安全的:不会再有回调核心转储(coredump)。你可以把许多信号和你所希望的单一槽相连,并且一个信号也可以和你所期望的许多槽相连。把一个信号和另一个信号直接相连也是可以的。(这时,只要第一个信号被发射时,第二个信号立刻就被发射。)总体来看,信号和槽构成了一个强有力的组件编程机制。如果一个类要使用信号与槽机制,它就必须是从QObject或QObject的子类继承,而且类的定义必须加上Q_OBJECT宏。signals、slots和emit是Qt特有的关键字,分别用来表示信号、槽、和发送信号,移除这些关键字和预处理程序,就可以使用标准的C+编译器。槽同其他函数一样也具有访问权限,只是槽的访问权限决定了谁可以和它相连,如一个publicslots:包含了任何信号都可以相连的槽(AndrewKrause2007)。一个protectedslots:包含了只有这个类和它的子类的信号才能连接的槽。这就是说这些槽只是类的实现的一部分,而不是它和外界的接口。一个privateslots:包含了只有这个类本身的信号可以连接的槽,甚至它的子类都没有获得连接的权利。太原理工大学毕业设计(论文)用纸5connect(对象1,信号1,对象2,插槽1)connect(对象1,信号1,对象2,插槽2)connect(对象1,信号2,对象4,插槽1)connect(对象3,信号1,对象4,插槽3)图2-1信号和槽的连接原理图2.1.3Qt的优势作为嵌入式图形界面的开发工具,Qt的优势有很多,具体的优势列举如以下几点:1.支持平台广泛Qt应用程序接口与工具兼容于所有支持平台,让开发人员掌握一个应用程序接口,便可执行与平台非相关的应用开发与配置,其支持的平台有:QTWindows、QTMac(MacOSX)、QTX11(LinuxSolarisHP-UXIRIXAIX)等。2.封装多Qt对不同平台的专门QPI进行了专门的封装(文件处理、网络等)。3.面向对象Qt具有模块设计和注重软件构件或元素的可重用性的特点。4.构建支持Qt提供信号和槽概念,这是一种类型安全的方法,它允许回调,并支持对象之间在互相不知道对方信息的情况下进行合作,这使得Qt非常适合于真正的构建编程。5.友好的联机帮助Qt提供了大量的联机参考文档,有超文本HTML方式,也有Unix帮助手册和补充说明,并且对于初学者,其中的指南将一步步介绍如何进行Qt编程。6.便利性由于Qt是一种跨平台的GUI工具包,它对编程者隐藏了在处理不同窗口系统时潜在的问题,Qt定义了一些类来隐藏在不同操作系统上不同处理方式下的细节问题。对象1信号1信号2对象3信号1插槽1对象2信号1插槽1插槽2对象4插槽1插槽2插槽3太原理工大学毕业设计(论文)用纸67.用户自定义使用其他的一些工具包经常会遇到这样的一种情况,没有真正的适合需求的组件,声称自定义的组件对用户来说就像是一个黑匣子。而在Qt中生成用户自定义的组件非常简单,而且易于修改组建的行为。8.国际化Qt为本地化应用提供了完全的支持,所有用户界面文本都可以基于消息翻译表被翻译成各国语言,Qt还支持双字节16bit国际字符标准。9.丰富的API函数Qt为专业应用提供了大量的函数,在Qt的API中含有大约250个C+类,大多数的类都是GUI专有的。10.可用户化外观Qt支持主题,基于Qt的应用程序能够在Windows外观、Motif外观,以及其他一些用户化主题之间切换。11.完整的一套组件工具Qt编程的基本模块称之为组件,组件是用户界面的组成部分,Qt含有用来创建专业外观的用户界面所需要的所有组件。2.1.4Qtcreator介绍Qtcreator是全新的跨平台集成开发环境,为QT开发人员的需求量身定制,由于捆绑了最新QT库二进制软件包和附加的开发工具,并作为QTSDK的一部分,Qtcreator在单独的安装程序内提供了进行跨平台QT开发所需的全部工具。Qtcreator主要是为了帮助新QT用户更快速入门并运行项目,还可提高有经验的QT开发人员的工作效率。QT的功能和优势:1.使用强大的C+代码编辑器可快速编写代码:语言标识和代码完成功能;输入时进行静态代码校验以及提示样式;上下文相关的帮助;代码折叠;括号匹配和括号选择模式;高级编辑功能。2.使用浏览器工具管理源代码:集成了领先的版本控制软件,包括Git、Perforce和Subversion;开放式文件,无需知晓确切的名称或位置;搜索类和文件;跨不同位置或文件沿用符号;在头文件和源文件,或在声明和定义之间切换。3.为QT跨平台开发人员的需求而量身定制:集成了特定于QT的功能,如信号与槽;图示调试器,对QT类结构可一目了然;集成QTDesigner可视化布局和格式构建器;只需单击一下就可生成和运行QT项目。4.使用拖放功能快速设计用户界面;定制widget,或从标准widget库中选择widget;以本地外观快速预览格式。(5)通过界面原型生成C+或Java代码:将QTDesigner与VisualStudio或EclipseIDE配合使用;使用QT信号与槽机制构建功能齐全的用户界面。2.1.5Qt所支持的平台1.嵌入式Linux(EmbeddedLinux)QtforEmbeddedLinux是用于嵌入式Linux所支持设备的领先应用程序架构。您可以使用Qt创建具有独特用户体验的具备高效内存效率的设备和应用程序。Qt可以在任何支持Linux的平台上运行。Qt的直观API,让您只须少数几行代码便可以更短的时间实现更高端的功能。太原理工大学毕业设计(论文)用纸7特点:用于Linux的紧凑的视窗系统;用于广泛的应用程序处理器的开发;移植桌面代码至嵌入式平台,或通过重新编译,反之亦然;编译移除不常使用的组件与功能;利用系统资源并实现本地化性能;开发嵌入式设备犹如开发桌面系统一样轻松简单。Qt除了提供所有工具以及API与类库,(如WebKit)外,QtforEmbeddedLinux还提供用于最优化嵌入式开发环境的主要组件。紧凑高效的视窗系统(QWS):Qt构建在标准的API上,应用于嵌入式Linux设备,并带有自己的紧凑视窗系统。基于Qt的应用程序直接写入Linux帧缓冲,解除了您对X11视窗系统的需求。具有减少内存消耗,占位更小,可利用硬件加速图形的优势,可编译移除不常使用的组件与功能等特点。虚拟帧缓冲(QVFb):QtforEmbeddedLinux提供一个虚拟帧缓冲器,可以采用点对点逐像素匹配物理设备显示。具有真实的测试构架,在桌面系统上嵌入式测试,模拟物理设备显示的宽度、高度与色深等特点。进程间通讯(IPC):IPC(进程间通讯)可以创建丰富的多应用程序用户体验。定义进程间通讯的两个主要概念即:信道与消息。可以进程监听并向信道发送消息,任何时候只要监听到一个进程便可创建信道。扩展的字体格式:Qt支持嵌入式Linux上的多种字体格式,包括:TrueTypePostscriptType1与Qt预呈现字体。Qt扩展了Unicode支持,包括:构建时自动数据抽取和运行时自动更新。另外Qt还提供定制字体格式的插件,允许在运行时轻松添加新字体引擎。应用程序间的字体共享功能可以提高内存效率。基本要求为开发环境:Linux内核2.4或更高;GCC版本3.3或更高;用于MIPSGCC版本3.4.或更高。占用存储空间:存储空间取决于配置,压缩后:1.74.1MB,未压缩:3.69.0MB。硬件平台:易于载入任何支持带C+编译器和帧缓冲器驱动Linux的处理器。支持ARMx86MIPSPowerPC。2.Mac平台Qt包括一套集成的开发工具,可加快在Mac平台上的开发。在编写Qt时,并不需要去设想底层处理器的数字表示法、字节序或架构。要在Apple平台上支持Intel硬件,Qt客户只需重新编辑其应用程序即可。3.Windows平台使用Qt,只需一次性构建应用程序,无须重新编写源代码,便可跨多个Windows操作系统的版本进行部署。Qt应用程序支持WindowsVista、Server2003、XP、NT4、Me98和WindowsCE。4.LinuxX11平台Qt包括一套集成的开发工具,可加快在X11平台上的开发。Qt由于是KDE桌面环境的基础,在各个Linux社区人尽皆知。几乎KDE中的所有功能都是基于Qt开发的,而且Qt是全球社区成员用来开发成千上万的开源KDE应用程序的基础。5.WindowsCEMobileQt是用C+开发的应用程序和用户界面框架。通过直观的API,您可以使用Qt为大量的设备编写功能丰富的高性能应用程序。Qt包括一套丰富的工具集与直观的API,意味着只须少数几行代码便可以更短的时间实现更高端的功能。主要特点:硬件依存性极小;支持多数现有的WindowsCE配置;对于自定义的硬件配置亦轻松构建;移植桌面代码至嵌入式平台,或通过重新编译,反之亦然;编太原理工大学毕业设计(论文)用纸8译移除不常使用的组件与功能;利用系统资源并实现高性能;开发嵌入式设备尤如开发桌面系统一样轻松简单。Qt除了提供所有工具以及API与类库外,QtforWindowsCE还提供用于最优化嵌入式开发环境的附加功能。本地化和可定制的外观:Qt在使用时,可以支持WindowsMobile和WindowsCE两种样式。在运行时,Qt应用程序将检测使用哪一种样式。采用Qt样式表单,您只需要花费用于传统UI风格的少许时间和代码行,便可以轻松定制您的应用程序外观。特点:基于HTML层叠式样式表(CSS);适用于全部widget;任何熟悉CSS技术的人员都可以定义复杂的样式。先进的文本布局引擎:QtforWindowsCE支持TrueType和点阵字体。同时Qt还支持扩展的Unicode和从右至左的书写语言。Qt的富文本引擎增加了新的功能用于复杂的文本布局,包括制表和路径追踪,以及环绕图形的文本。基本要求为开发环境:MicrosoftVisualStudio2005(StandardEdition)或更高ActivePerl。占用存储空间:紧凑配置4.8MB,全配置8.4MB。操作系统:WindowsCE5或更高,WindowsMobile5或更高。硬件平台:支持ARMx86,(在SH4和MIPS上编译)。6.塞班平台(Symbian)Qt通过和S60框架的集成为Symbian平台提供了支持。在最新版的QtSDK1.1中我们可以直接生成可以在塞班设备上运行的sis文件。7.MeeGo平台(Maemo6现更名为MeeGo)Qt是一个功能全面的应用程序和用户界面框架,用来开发Maemo应用程序,也可跨各主要设备和桌面操作系统部署这些程序且无需重新编写源代码的。如果您在多数情况下开发适用于Symbian、Maemo或MeeGo平台的应用程序,可以使用免费LGPL授权方式的Qt。Qt将为诺基亚设备运行MeeGo(Harmattan)提供依托,并可为所有即将推出的MeeGo设备中的应用程序开发提供API,为Qt开发人员提供了更多平台。不久,MeeGo设备就会完全支持(X11)Qt。2.1.6Qt类库模块化QtC+类库提供一套丰富的应用程序生成块(block),包含了生成高级跨平台应用程序所需的全部功能。1.先进的图形用户界面(GUI):Qt为您在桌面与嵌入式平台上开发先进的GUI应用程序,带来所有需要的功能。Qt使用所支持平台的本地化图形API,充分利用系统资源并给予应用程序本地化的界面。从按钮和对话框到树形视图与表格都具有完整的控件(窗体),自动缩放,字体、语言与屏幕定位识别布局引擎,支持抗锯齿、矢量变形以及可缩放矢量图形(SVG),具有样式API和窗体样式表,可完全自定义用户界面,支持嵌入式设备的硬件加速图形和多重显示功能2.基于OpenGL与OpenGLEs的3D图形:OpenGL是一个标准的图形库,用于构建跨平台和支持硬件加速的高性能可视化应用程序。虽然OpenGL完美
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024至2030年螺杆式过滤器项目投资价值分析报告
- 2024至2030年给水用聚乙烯注塑注塑法兰头项目投资价值分析报告
- 2024至2030年中国银白亮边彩凳行业投资前景及策略咨询研究报告
- 2024至2030年中国滚筒刷架数据监测研究报告
- 2024年服务合同参考格式范本
- 2024个人房屋租赁合同协议书范文
- 2024年系统维护服务协议格式版
- 2024年简化版劳动合作协议样例版
- 2024版临时司机雇佣协议条款版
- 电子处方系统开发与维护服务合同
- 中国书法简史
- 血透病人心力衰竭护理查房PPT
- 《数据图表与分析》教学设计及反思
- 磷石膏综合利用调查报告
- 银行业务模拟
- 《观沧海》说课(课堂PPT)
- SF305无卤阻燃型聚酰亚胺薄膜挠性覆铜板-PCBGlobal
- PET瓶片再生纺制涤纶长丝工艺和设备的研究
- 政府采购会议领导讲话稿
- 聘书模板可编辑
- 新建国际学校项目商业计划书
评论
0/150
提交评论