(通信与信息系统专业论文)基于svg的富媒体系统设计及h264差错隐藏技术.pdf_第1页
(通信与信息系统专业论文)基于svg的富媒体系统设计及h264差错隐藏技术.pdf_第2页
(通信与信息系统专业论文)基于svg的富媒体系统设计及h264差错隐藏技术.pdf_第3页
(通信与信息系统专业论文)基于svg的富媒体系统设计及h264差错隐藏技术.pdf_第4页
(通信与信息系统专业论文)基于svg的富媒体系统设计及h264差错隐藏技术.pdf_第5页
已阅读5页,还剩54页未读 继续免费阅读

(通信与信息系统专业论文)基于svg的富媒体系统设计及h264差错隐藏技术.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

北京邮电大学硕十毕业论文 基于s v g 的富媒体系统设计及h 2 6 4 差错隐藏技术 捅姜 3 g 时代的到来标志着移动通信的宽带化和多媒体化,把在互联网上大获成 功的富媒体业务移植到移动网中已经成为了用户的迫切需求。s v g ( s c a l a b l e v e c t o rg r a p h i c ) 是一个标准开放的矢量图像格式,由于其具有任意放缩、文本独 立、较小文件尺寸和超强交互性等多种独特的优势,适用于高延迟、低带宽的无 线网络所提供的服务。因此在m e p g 组织针对移动富媒体制定的新标准一轻量级 场景描述中,s v g 被用来进行场景描述。本文分析了s v g 的标准特点和优势, 并结合s v g 的开发工具包b a t i k ,阐述了b a t i k 三个组成模块之间的相互关 系和各自作用。设计并实现了一个完整的富媒体交互系统,系统使用x m l 和 j a v a s c r i p t 绘制s v g 场景并实现动态交互,通过j a v a 编写浏览器实现对标记语 言和脚本的解析。 h 2 6 4 a v c 是i t u t 的视频编码专家组和i s o i e c 的运动图像专家组联合 提出新一代的视频编码标准,具有很高的压缩效率和很强的鲁棒性,非常适合于 网络传输。本文针对h 2 6 4 视频压缩的特性,实现了一种全帧差错隐藏技术,算 法利用有理函数进行插值,生成复杂的矢量场来重建丢失帧的矢量场,并适当的 处理了重叠区和遮挡区,最后通过前向投影和下采样重建图像。实验结果表明本 算法能较好的改善整帧丢失时重建图像的客观质量。 关键词:富媒体、s v g 、b a t i k 、h 2 6 4 、差错隐藏 北京邮电大学硕十毕业论文 t h ed e s i g no fr i c hm e d i as y s t e mb a s e do n s v ga n dt h er e s e a r c ho fe r r o r c o n c e a l m e n tf o rh 2 6 4 a b s t r a c t t h ea r r i v a lo f3ga g ei n d i c a t e st h e d e v e l o p m e n to fm o b i l e c o m m u n i c a t i o ni n t ob r o a d b a n da n dm u l t i m e d i ab a s e d ,a n dr i c hm e d i a b u s i n e s sw h i c hh a sb e e ns u c c e s s f u lo nt h ei n t e r n e ti su r g e n t l yn e e d e db y u s e r st ob et r a n s p l a n t e dt ot h em o b i l en e t w o r k s v g ( s e a l a b l ev e c t o r g r a p h i c ) i sav e c t o rg r a p h i c sf o r m a tw i t ho p e ns t a n d a r d b e c a u s eo fi t s a r b i t r a r yz o o m ,t e x ti n d e p e n d e n t ,s m a l l e rf i l es i z e ,s u p e ri n t e r a c t i v ea n d o t h e ru n i q u ea d v a n t a g e s ,i ti ss u i t a b l ef o rt h es e r v i c e sw h i c hi sp r o v i d e d b yh i g h 1 a t e n c ya n dl o wb a n d w i d t hw i r e l e s sn e t w o r k i nm p e g sn e w s t a n d a r d l a s e r ( l i g h t w e i g h ta p p l i c a t i o ns c e n er e p r e s e n t a t i o n ) w h i c h m a k e sf o rm o b i l er i c hm e d i a ,s v gi su s e df o rs c e n er e p r e s e n t a t i o n f i r s t o fa l l ,t h i sp a p e ra n a l y z e st h es v gs t a n d a r d sf e a t u r e sa n da d v a n t a g e s t h e n i ti n t r o d u c e st h es v gd e v e l o p m e n tk i t b a t i ka n dd e s c r i b e dt h e r e l a t i o n s h i pa m o n gt h et h r e ec o m p o n e n tm o d u l e so fb a t i ka n dt h e r e s p e c t i v er o l e so ft h e m t h ep a p e rp r o v i d e st h ed e s i g na n dr e a l i z e so fa c o m p l e t er i c hm e d i ai n t e r a c t i v es y s t e m ,w h i c hu s e sx m l a n dj a v a s c r i p t t or e n d e rs v gs c e n e sa n dr e a l i z e st h ed y n a m i ci n t e r a c t i o n a n dt h r o u g h c o m p o s i n gb r o w s e rb yu s i n gj a v a ,i tr e a l i z e st h ea n a l y s i so ft h em a r k u p l a n g u a g ea n ds c r i p t h 。2 6 4 | 斟c 。w h i c hh a so u t s t a n d i n gc o m p r e s sp e r f o r m a n c ea n d s t r o n gr o b u s t n e s s ,i san e wv i d e oc o m p r e s ss t a n d a r di s s u e db yt h ejo i n t v i d e ot e a m ( j v t ) c o n s i s t i n go ft h em e m b e r so fm p e ga n dt h ei t u s v i d e oc o d i n ge x p e a sg r o u p i ti sv e r ys u i t a b l ef o rn e t w o r kt r a n s m is s i o n i nt h i sp a p e r ,n e we r r o rc o n c e a l m e n tf o rw h o l ef r a m ea l g o r i t h mi s i m p l e m e n t e d ,w h i c hi sb a s e do nt h en e wf e a t u r eo fh 2 6 4 t h ea l g o r i t h m u s e sr a t i o n a lf u n c t i o ni n t e r p o l a t i o nt og e n e r a t ec o m p l e xv e c t o rf i e l dt o r e c o n s t r u c tt h el o s tf r a m ev e c t o rf i e l d ,a n de f f e c t i v et r e a t m e n to ft h e o v e r l a p p i n ga r e a sa n d s h e l t e ra r e a s ,a n d f i n a l l yu s i n g t h ef o r w a r d p r o j e c t i o na n dd o w n s a m p l i n gt or e c o n s t r u c t e di m a g e t h er e s u l t so f 北京邮电大学硕f :毕业论文 e x p e r i m e n ts h o wt h a tt h ea l g o r i t h mc a nc a r r yo u te r r o rc o n c e a l m e n tf o r w h o l ef r a m e ,a n dt h eo b j e c t i v eq u a l i t yc a nb eb e t t e r k e yw o r d s :r i c h m e d i a s v g b a t i kh 2 6 4e r r o r - c o n c e a l m e n t 北京邮电大学硕十毕业论文 独创性( 或创新性) 声明 本人声明所呈交的论文是本人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果,也不包含为获得北京邮电大学或其他 教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任 何贡献均已在论文中作了明确的说明并表示了谢意。 鬟箬茧遂竺?本人签名:理阻堕 本人承担一切相关责任。 日期:- 年l 仁一 关于论文使用授权的说明 学位论文作者完全了解北京邮电大学有关保留和使用学位论文的规定,即:研究 生在校攻读学位期间论文工作的知识产权单位属北京邮电火学。学校有权保留并向国家 有关部门或机构送交论文的复印件和磁盘,允许学位论文被查阅和借阅;学校可以公布 学位论文的全部或部分内容,可以允许采用影印、缩印或其它复制手段保存、汇编学位 论文。( 保密的学位论文在解密后遵守此规定) 保密论文注释:本学位论文属于保密在一年解密后适用本授权书。非保密论 文注释:本学位 本人签名: 导师签名: 适用本授权书。 日期: 日期: 北京邮电大学硕十毕业论文 1 1研究背景 第一章绪论 随着3 g 时代的到来,通信领域内新业务的需求也在逐步的扩大,人们不再 仅仅满足于传统的语音业务和低速率的数据业务,而是去追求更丰富多彩的多媒 体业务。富媒体在互联网上已经建立起了许多成熟的业务,因此人们想把许多在 互联网上大获成功的业务形式移植到移动网中,去获得更好的移动服务体验。 m e p g 组织在综合当前移动网络发展状况和现有的终端技术的基础上,针对移动 富媒体业务提出了一个新的标准一一轻量级场景描述( l a s e rl i g h t w e i g h t a p p l i c a t i o ns c e n er e p r e s e n t a t i o n ) ,其中s v g 被指定用来进行场景描述。s v g ( s c a l a b l ev e c t o rg r a p h i c s ,可伸缩矢量图像) 是w 3 c 在2 0 0 0 年发布的一种开 放的标准文本式矢量图形描述语言,其特点是矢量性和开放性。随着2 0 0 3 年4 月发布的s v g1 1 规范变成了推荐标准( r e c o m m e n d a t i o n ) ,a d o b e 、微软、i b m 等业内知名软件厂商逐步加大了对s v g 的支持力度,各种浏览器端s v g 插件纷 纷亮相,众多专业矢量绘图工具也开始支持s v g 标准。可以展望,s v g 在手机 等无线手持设备上的应用将是3 g 时代最重要的应用之一。因此如何去设计并实 现一个基于s v g 的富媒体系统,将是未来富媒体服务领域一个研究的热点。 如何加强视频码流的鲁棒性( r o b u s t n e s s ) 始终是视频通信领域一个焦点问 题,而差错隐藏是针对网络传输的不可靠性做出的一种后端的处理技术,它能有 效地抗击误码,加强鲁棒性,在解码端提高视频的接收质量。因此如何在解码器 中嵌入差错隐藏模块是一个值得研究的方向。 1 2本人工作及论文安排 本人在硕士研究生期间,学习了s v g 的标准体系,查阅了大量的技术资料, 仔细研究了相关的工具软件,应用程序接口和编程语言,在此基础上,独立开发 了基于s v g 的富媒体系统客户端软件。同时,还研究了基于h 2 6 4 的差错隐藏 技术,并在h 2 6 4 解码器中实现了一种高效的差错隐藏算法。以下将介绍在开发 富媒体系统和h 2 6 4 差错隐藏技术的实现中本人所做的具体工作: 1 基于s v g 的富媒体系统客户端软件 北京邮电人学硕f :毕业论文 包括绘制s v g 场景,编写s v g 浏览器,接收、解析和应用x m l 文档,浏 览器实现对s v g 文档的渲染和交互。这其中关键部分是s v g 文档的编写,使用 j a v a 编写浏览器界面和功能。 2 h 2 6 4 差错隐藏 在t 2 6 4 开源解码器中嵌入差错隐藏功能,根据h 2 6 4 的特性,实现了一种 时间差错隐藏和空间差错隐藏相结合的差错隐藏算法。 论文具体安排如下: 第一章首先简要介绍了本课题的研究背景和研究意义,然后展望了s v g 业 务的开展和应用现状,最后介绍了本人的工作和论文的安排。 第二章介绍富媒体系统相关的支撑技术:x m l 语法结构、s v g 标准、b a t i k 工具集、j a v a 编程等。 第三章介绍整个富媒体系统的设计和开发。 第四章介绍h 2 6 4 的标准和差错隐藏技术的研究现状。 第五章介绍全帧差错隐藏技术的实现。 第六章总结本文所做工作,并展望未来。 2 北京邮电大学硕上毕业论文 第二章富媒体系统支撑技术 基于s v g 的富媒体系统中主要涉及到x m l 技术、s v g 标准、b a t i k 工具 集、j a v a 技术。为了使读者更好的理解本文,先简单介绍这些相关的支持技术。 2 1x m l 技术 x m l ,e x t e n s i b l em a r k u pl a n g u a g e ( 可扩展标识语言) ,是当代最热门的网络 技术之一,被称为“第二代w e b 语言 、“下一代网络应用的基石”。自从它被提 出来,几乎得到了业界所有大公司的支持,丝毫不逊于当年h t m l 被提出来的 热度。而s v g 是基于x m l 的标准语言,因此先了解一点x m l 的知识,对于后 面的系统设计显得非常重要。有了这些基本知识,我们才能去编写一个格式标准 合法的s v g 文档。 2 1 1 x m l ( e x t e n s i b l em a r k u pl a n g u a g e ) 扩展标记语言产生的原因 由于h t m l 语言满足不了日益复杂的w e b 信息交流的需求,因此x m l 应 运而生;另外x m l 具有可扩展的功能。x m l 中标签名称可以由用户自己设定, 这样方便我们对各种数据的分类查找和处理。 表2 - 1h t m l 与x m l 的比较 比较内容 h t m lx m l 可扩展性不具有扩展性是元标识语言, e x t e n s i o n 可用于定义新的 标识语言 侧重点侧重于如何表现信息侧重于如何结构 化地描述信息 语法要求 不要求标记的嵌套,配对等, 严格要求嵌套, 不要求标识之间具有一定的配对,并遵循d t d 顺序的树形结构 可读性及可难以阅读,维护结构清晰,便于 维护性 阅读,维护 数据和显示内容描述与显示方式整内容描述与显示 的关系合为一体方式相分离 保值性不具有保值性具有保值性 北京邮电大学硕t :毕业论文 2 1 2x m l 语法 元素:一个x m l 元素是由开始标签、结束标签以及标签之间的数据构成。 开始和结束标签用来描述标签之间的数据。标签之问的数据被认为是元素的值。 如: 富媒体系统 文档:一个基本的x m l 文档就是一个x m l 元素,它可以嵌套x m l 元素。 x m l 文档包含了x m l 标记和文本。x m l 文档由 开头。 声明:语法规定,每个x m l 文档都必须以x m l 声明开头,其中包括声 明x m l 的版本以及所使用的字符集等信息。注意:在x m l 文档前不允许再有 任何其他的字符,甚至是空格,也就是说x m l 声明必须是x m l 文档中的第一 个内容。x m l 声明由“ 结束。如 , 其中v e r s i o n = “1 0 ”声明了此文档所符合x m l 的版本,即版本信息。有时文档 声明有一个e n c o d i n g 属性,该属性是用于指定x m l 文档的编码方式e n c o d i n g = “曲2 3 1 2 用于含有中文的文档中。 注释:带有合适注释的x m l 文档不仅使其他人能方便地读懂、交流,更重 要的是,它可以方便用户将来对此文档进行修改。x m l 的注释使用“ 进行标记。为了保持兼容,不能在注释中加入双下横线。处于“ 中的所有语句在处理时都被x m l 处理器所忽略。 属性:在x m l 中,用户可以自己定义所需要的标记属性。属性是由“= 分割开的名称数值对。属性名称同样对大小写敏感。属性值始终是字符串。如 ,这里2 0 0 是字符串而不是数字。x m l 对属性值的内容 没有严格的限制。属性值可包括空格或以数字开头,x m l 属性值是由引号来界 定,而且属性值必须用引号括起来,一般用双引号。属性值本身包含双引号时, 那么就应该用单引号;如果属性值包含双引号和单引号时,就应该使用实体参考 “& a p o s ;”和“& q u o t ;”了。 标记:标记就是以“ 结束并且不在注释和c d a t a 节中 的内容。标记的名称都是自己设定的,标记中不能包括空格;x m l 文档对大小 写敏感。每个标记必须保证严格关闭。关闭标记名称与打开标记的名称相同,但 是其名称前要加上“ 。在x m l 中,空标记即没有关闭标记的标记,需要用 来关闭。基本格式是 。 实体参考:在x m l 文档中,符号“ ”是被x m l 处理器解释成标 记特定部分的。当在元素内容中出现这些特定符号时,就不能直接输入这些符号。 不然就导致出错。x m l 文档要用实体参考来替代它们。实体声明有两大类:通 用实体声明和参数实体声明。通用实体声明在引用时用“& ”开始以“:”结束; 4 北京邮电大学硕上毕业论文 参数实体声明引用时用“开始以“; 结束。x m l 定义的实体参考有5 个。 表2 - 2 实体参考对应表 实体参考字符 & a m p ; & & l t ; & a p o s ; & q u o t ; c d a t a 节:当我们遇到一段包含大量特殊符号的文本需要输入时,就不得 不把其中“ 等大量特殊符号用实体参考替代,这种方法十分繁琐。 若使用c d a t a 节就能很好的解决问题。在c d a t a 节中的所有内容包括“ 、“ 和“ 、“ 等,全部被当作纯字符数据对待,而不再认为它们是 标记、实体参考或属性的一部分。c d a t a 节以“ 结束。在其内容中唯一不允许出现的是“】 。 2 1 3正规有效的x m l 文档 正规有效的x m l 文档:如果一个x m l 文档包含一个或多个元素,各元素 都有正确的嵌套,并且正确的使用了属性和实体参考,符合x m l 的基本语法规 范,那么就认为这个x m l 文档是格式良好的。 有效的x m l 文档:如果x m l 文档与一个文档类型定义d t d 相关联,而该 x m l 文档符合该d t d 的各种规则,称该x m l 文档是有效的。注意,d t d 对于 x m l 文档来说并不是必须的,但x m l 文档要由d t d 来保证其有效性。所以要 保证x m l 文档的有效性就必须在x m l 文档中引入d t d 。而且d t d 使x m l 文 档读起来易懂,也令人容易发现文档中的错误。一个没有关联d t d 的x m l 文 档虽然可以是格式良好的,但却不是有效的。一个关联d t d 的x m l 文档若是 不符合d t d 的所有定义,那么它也不是有效的。 2 2s v g 基本语法介绍 2 2 1s v g 的框架元素 :定义s v g 图像时, 是一个必不可少的元素,s v g 文档是以 的定义开始的【。 元素中首先定义了在用户当前坐标系中的一个矩形可渲 5 北京邮电人学硕上毕业论义 染区域,超出这个区域,客户端的s v g 解释器将不对其进行渲染。这个区域位 置由 元素中的“x 、“y ”、“w i d t h ”和“h e i g h t ”属性决定。s v g 中所有元 素都是 的子元素,其中可包含单一的s v g 图像元素,也可以包括其它一些 比较复杂的可嵌套元素和其它高级图像元素。 : 元素用来将一批特征类似的元素定义成一个集合,它可包括任何 可视化元素。当一些元素需要拥有共同的属性或样式时,可将其作为子元素定义 到同一个 元素中,然后在 这个父元素中说明样式。 元素本身也可以嵌 套定义,该元素有一个比较重要的属性“i d ”,这个属性指明了本组的标识号, 可以在其它场合引用。 与 元素t 它们几乎相当于s v g 文档中的注释。 元素用来 定义一个s v g 文档的标题,而 元素是用来说明文档的主要内容。这两个 元素的值都不会被渲染在图像中。 元素:用来定义被引用的元素,其所有子元素都是待引用的。 元 素中几乎所有子元素都可以成为 元素的子元素,反之亦然,两者的区别仅 仅在于, 元素只是定义而已,并不进行元素的实际绘制与渲染。 元素:通常用来引用s v g 中已经定义好的可视化元素,它有几个可选 的属性:“x ”、“y 、“w i d y h 和“h e i g h t 。这四个属性用来确定 元素所引 用元素的实例在给定坐标系中的矩形渲染区域的位置。 元素相当于将被引 用元素的内容复制一份放置到当前位置。其语法 其中x l i n k :h r e f 属性是引用特定元素的另一种方式。 2 2 2s v g 基本形状元素 元素:定义了一个矩形( 或圆角矩形) ,该矩形的两组对边分别平行 于用户坐标系的x 轴和y 轴;圆角矩形的圆角过渡部分是一段四分之一的椭圆 弧,“r x ”和“w ”值分别代表其半长轴和半短轴( 倒过来也可以) 。 元素:使用圆心坐标值和半径值画图。 元素: 元素定义了一个长短轴平行于用户坐标系x y 轴方 向的椭圆。椭圆使用中心坐标和长短轴长度来描述。 元素:表示折线,一般用来绘制开放的非封闭图形。该元素的常 用属性就一个:p o i n t s = “ 是一组p o i n t 类型的变量集合,各个元 素之问以逗号隔开。p o i n t 指折线的各个顶点的位置坐标,坐标值必须都成对。 元素:该元素用顶点坐标值的组合来描述一个封闭的多边形,其 重要参数也只有一个“p o i n t s ”:p o i n t s = “ ,此属性值是各个 顶点的坐标值的集合,同样必须是偶数个。 元素所绘制的线段最后会 6 北京邮电人学硕上毕业论文 构成一个封闭的多边形。 2 2 3路径简介 路径是用点的集合来描述的。当前点可以被认为是一支笔的笔尖,位置可变, 移动的方式可以是直线也可以是曲线的,笔尖所经之处所绘制的轨迹就是路径。 ( 类似于手工绘图) ,路经所使用的描绘方法有m o v e t o ( 不进行绘制的动作而把当 前点移动到某处) 、l i n e t o ( 从当前点画线段到某处) 、c u r v e t o ( 绘制贝塞尔曲线) 、 a r c ( 绘制圆弧或椭圆弧) 和c l o s e p a t h ( 封闭路经) 等。 路径由d “p a t hd a t a 一句全面定义,其中“p a t hd a t a 包含绘图指令和坐 标数据值。 元素的绘图指令: m 表示移动当前点,该命令表示从给定的坐标点处开始绘制一条新的子路 径。l 表示绘直线,绘制直线的命令用l 和l 表示,前者是绝对坐标,后者是相 对坐标。z 表示完成闭合路径,即将路径首尾相连,构成封闭图形。路径闭合命 令虽然也有z 和z 两种形式,可效果一样。h 和v 分别表示绘制水平和竖直线。 绘制曲线命令可以绘制3 种形式的曲线:三次贝塞尔曲线、二次贝塞尔曲线 和椭圆弧线。c 表示绘制普通的三次贝塞尔曲线,语法是cx 1y 1 ) 【2y 2d e s t x d e s t y ,其含义是以当前点作为弧线起点,以( x l ,y 1 ) 为第一控制点,以( x 2 ,y 2 ) 为 第二控制点,( d e s t x ,d e s t y ) 为曲线弧终点,来绘制该曲线。c 与c 的区别仍然是绝 对和相对坐标。 绘n - 次贝塞尔曲线的命令是q 和t ( 包括q 和0 。q 或q 表示绘制普通的 二次贝塞尔曲线,语法是”qx ly ld e s t xd e s t y ”。其含义:以当前点作为曲线弧 的起点,以( x l ,y 1 ) 为第一控制点,以( d e s t x ,d e s t y ) 为曲线弧的终点,来绘制二次贝 塞尔曲线。 2 2 4坐标变换 元素的“v i e w b o x 属性:该属性的作用是规定视口的坐标范围,范 围重新定义后,缺省的坐标度量单位也会改变。如 这条语句说明本s v g 文档视口大小为4 c m , 坐标范围被标记为( o04 0 04 0 0 ) ,那么缺省用户坐标系的度量单位便是0 0 1 c m 而 不是一个像素大小了。该属性常用来拉伸一个图像使其适合某一特定的矩形区 域。 “t r a n s f o r i l l 属性: 7 北京邮i 乜大学硕卜毕业论文 该属性表示坐标变换。大多数可见的元素都可使用“t r a n s f o r m ”属性来进行 坐标变换,“t r a n s f o r m ”属性值可以是许多不同情况的描述,包括坐标平移、旋 转、拉伸、歪斜和翻转等。 平移变换( t r a n s l a t e ) :平移的表达式是t r a n s f o r m = “t r a n s l a t e ( x ,y ) ”,意义为新 坐标系的原点移动到原坐标系的( x ,y ) 处,新坐标轴的方向不变。 旋转变换( r o t a t e ) :坐标旋转变换的表达式是t r a n s f o r m = “r o t a t e ( a n g l ec x ,e y ) ”。 伸缩变换( s c a l e ) :坐标伸缩变换的表达式是t r a n s f o r m = “s c a l e ( s x ,s y ) ,其s x ,s y 分别代表x 轴方向和v 轴方向拉伸或缩小的比例因子,大于1 位拉伸,小于1 的是收缩。 歪斜变换( s k e w ) :坐标歪斜变换形式是t r a n s f o r m = “s k e w x ( x a n g l e ) 或 t r a n s f o r m = “s k e w y ( y - a n g l e ) 其中x a n g l e 和y - a n g l e 分别表示沿x 轴和y 轴歪斜 的角度。 2 2 5文字 元素:用来在s v g 图像中插入普通的文字。属性说明如下:x _ “ 指名文字左下角的x 坐标,缺省值为o 。) ,= “ 指 名文字左下角的y 坐标,缺省值为0 。s v g 的 元素内只是简单的文本,不 具备自动换行的功能。 按路径排列文字: s v g 中文字可以按照一定的路径曲线进行排列,路径由 元素定义, 元素中有一个 子元素用来完成这个功能。 元素中有一 个“x l i n k :h r e f 属性可以对外部 进行引用,按路径排列文字。 2 2 6s v g 绘图基本操作 “6 l l 操作填充一个图像对象的内部( 包括边界) 。 “o p a c i t y 参数指明图像对象填充区域的透明度,其取值在0 到1 之间。0 为全透明,1 为不透明,缺省为l 。 “s t r o k e w i d t h ”参数:值是一个整数,说明路径勾画时的线条宽度,不允许 为负值,其缺省值是当前用户坐标系的一个单位长度,如果是0 ,则不进行描边。 “s t r o k e 表示描边所填充的颜色。 北京邮电大学硕十毕业论文 2 2 7超级链接 在s v g 文档中,超级链接是以明文的形式内嵌于文档内部的,形势上是一 个整体,也有利于修改。 元素:s v g 中提供了一个 元素,插入了 元素的s v g 在显示时, 其包含超级链接部分的元素上的鼠标会变成手形。单击后s v g 客户端解释程序 会使用缺省的浏览器打开该链接。 2 2 8 色彩渐变 色彩渐变是指用两种或两种以上的颜色通过特定方向的过渡来实现绘图的 过程,通过使用色彩渐变,可以获得比呆板的单一颜色要生动美观得多的效果, 色彩渐变是各种色彩之间的光滑过渡。使用渐变时一般需要先定义一种渐变的格 式,然后在需要的元素里引用它。渐变效果分为两种:线形渐变和放射性渐变。 线性渐变是颜色沿直线方向的渐变过渡。它用 元素来定义。 一般出现在 元素内部。该元素有一个“i d 识别号,以便其他元素引用。 放射性渐变( 也称径向渐变) :色彩过渡的方向不是固定一条线,而是呈环 状向外放射。放射状渐变使用 元素表示。 2 2 9 滤镜 2 2 9 1 滤镜基本知识 使用滤镜是先定义再引用,s v g 提供了一些最基本的滤镜变换元素,如光 照,偏移,模糊和色彩变换等。它们的结合使用可以形成许多奇妙的效果。 元素:该元素常出现在 元素内部用于定义一个完整的滤镜效 果。引用滤镜效果时其语句为 基本滤镜变换概述:所谓基本滤镜变换,只不过是 元素中定义的每一 步滤镜变换的统称。这些变换作为 元素的子元素而存在,一般其元素名都 以“f e ”开头,女n , 等。 2 2 9 2 光源与光照模式 光源的种类:光源是产生滤镜的一个重要来源。s v g 中光源有3 种:平行 光,点光源和聚光灯。 元素:代表平行光; 元素: 9 北京邮电人学硕七毕业论文 代表点光源,光源朝四周均匀发射; 元素:代表聚光灯,这种光源 发射的光束局限于一个圆锥内,光源位于圆锥的顶点。 光照模式:有漫反射 和镜面反射 。 2 2 9 3 高斯模糊 元素:用来产生模糊效果。 s t d d e v i a t i o n = “ n u m b e r ”该属性指明x 方向和y 方向的模糊参数,其值越大越模糊。 若只有一个值,则认为x ,y 方向模糊参数值相等。 2 2 9 4 图像的混合模式 元素:图像的混合是指一种按照特定规则对两个输入源图像进行 象素一级的混合运算处理,以达到一些常用合成效果的过程。该元素作为 元素的子元素,常用来实现两个中间结果的象素运算合并。 2 2 1 0动画 s v g 中的动画是严格的“矢量 形,它只说明某个属性或样式的值在动画 过程中的起止时刻,变化速度等关键参数,动画的中间效果完全靠s v g 客户端 解释程序来渲染完成。用于定义动画的元素有5 个: , , , 和 。 2 2 1 0 1动画元素的通用属性 标识所作用的元素:x l i n k :h r e f 女f l 标识所作用属性或样式参数:表明确定可视化元素后,是对其哪一个属性或 样式参数产生影响。a t t r i b u t e t y p e = “x m l i c s s l a u t o 说明了作用的类型到底是符 合x m l 语法的表准属性还是c s s 中的样式参数。缺省值是 a u t o 。a t t r i b u t e n a m e = “ ”指明所作用元素中将产生动画效果的是哪一个属性或样式参 数。 控制动画播放时间:b e g i n = “ l i n d e f i n i t e ”指定动画的开始 时刻。它最常用的值是时问偏移量,若其值为 i n d e f i n i t e 关键字,那么表示此 动画不会自动丌始,d u r = “ l i n d e f i n i t e ”指明动画的持续时间。 若值为i n d e f i n i t e 关键字,表示动画将无限地播动下去。e n d = “ l i n d e f i n i t e 指明动画的结束时间,若值为i n d e f i n i t e 时,表 1 0 北京邮电大学顾1 二毕业论文 示该动画不会自己结束。衅“ l m e d i a m a x = “ l m e d i a ”分别表示动画过程持续时间的上下限r e p e a t c o u n t = “ l i n d e f i n i t e ”指明这段动画的重复次数,值为i n d e f i n i t e 表示无限重复。 r e p e a t d u r = “ l i n d e f i n i t e ”指明重复的总时间,f i l l = ! ! f r e e z e l r e m o v e ” 用来指明动画执行完毕后的元素是停留在执行完的地方还是回到起始状态。 “f r e e z e ”表示停留在执行完的地方,“r e m o v e 表示回到起点。 控制动画的过程:f r o m = “ 指明本动画元素所作用的属性值在变化 过程中的起始值,t o = “ ”指明本动画元素所作用的属性值在变化过程中 的末尾值。 2 2 1 0 2 5 个动画元素 元素:用来设置数量值的属性或样式参数随时间的推移而变化。 元素:它影响的属性或样式必须是非数值型的。它的“t 0 属性必须是 一个非数值型的值,另夕b 元素所影响的一些非数值的属性或样式参数一般 没有渐变的过渡过程,只有突变。 元素可以使指定元素沿着一定的路径移动。 元素:专门用于靠颜色的变化来产生动画。其属性与上文的 通用属性一样,所不同的是“f r o m ”,“t o ,“b y 和“v a l u e 等值必须是颜 色值。 i 元素:用来实现对一个可视化元素。 2 3b a t i k 工具集介绍 2 3 1b a t i k 概述 b a t i k 是为想使用s v g 格式图片来实现各种功能的应用程序和a p p l e t 提供 的一个基于j a v a 的工具包【2 】。通过b a t i k ,你可以在任何使用到j a v a 的地方操作 s v g 文档。你也可以使用各种b a t i k 模块来在你的应用程序和a p p l e t 中来生成, 操作和转换你的s v g 图像。该项目的目标是为开发者的提供一套核心模块,可 用于共同或单独地支持s v g 的具体解决方案,并且提供一个高度可扩展的空间。 b a t i k 由三个模块组成:1 ) 核心模块,其中包括s v gg e n e r a t o r , s v gd o m j s v g c a n v a s ,t r a n s c o d e r b r i d g e 这些相应的模块可以根据不同的功能需求来灵 活搭配进行工作;2 ) 应用层模块主要用来提供对核心模块进行应用说明,但是 他们本身也有很强的用途。主要包括s q u i g g l e ,s v gr a s t e r i z e r , s v gf o n t | t 京邮i u 人 ll 。毕业论文 c o n v e r t e r , s v g p r e t l y - p f i n t e r 这几个部分;3 ) 底层模块是核心模块工作的基础和 支持包括t h e g r a p h i c v e c t o r t o o l k i t ( g v t ) ,r e n d e r e r , s v gp a r s e r 这几个部分 这些部分根少直接被使用,但是g v t 和r e n d e r e r 是比较重要的两个模块,如果 想要对s v g 和b a t i k 进行深入研发的话,是必须要对这两个模块熟悉的。图2 1 展示了三个模块的相互关系; a p p l i c a t i o n s s v g is v gf o n t _ _ s v gf o n i r a s t e f i z e r 幽c o n v e r t e r 斟c o 叶e r t e l 辩霎匪 盏盗_ _ 圜菌嗣i i - 圈豳 图2 - 1b a t i l 个组成模块的结构关系 232b a t i k 的用途 b a t i k 使通过j a v a 处理s v g 内容变得简单。举个例子,通过使用b a t i k 的s v g g e m e r a t e 模块,j a v a 应用程序和a p p l e t 可以非常简单的使输出图像的格 式为s v g 。使用b a t i k 的s v gv i e w i n gc o m p o n e n t , 应用程序或者a p p l 乱可以非 常容易的整合s v g 查看和交互功能。另外还可咀使用b a t i k 的模块将s v g 转换 为其他格式,比如说j p e g 等图像格式和p d f 等其他向量格式。 北京邮电 学碗l 毕业论文 冒暖冒盈卜 拿屈固 ! 塑。型二二二塑竺塑型 雹 囤2 - 2b a t i k 应用结构示意图 2 3 2 1核心模块的组成 s v g g e n e r a t o r :这个部件可以在j a v a 应用程序和a p p l e t s 中使用,轻松的把 图形转换到s v g 格式。 s v g d o m :s v g 标准中有对s v g d o m a p i 的严格定义,这个部件足对这 个定义的一个实现。d o m 是一种方法,对整个x m l 文档加载到内存中,并轻 松地操纵它。 j s v g c a n v a s :这是一个用来显示s v g 内容的s w i n g 部件,它允许用,1 进行 交互显示的图像,缩放,平移,旋转等。 t r a n s c o d e :顾名息义,这部分足用于文件格式的转换。 b r i d g e :这部分很少直接使用一般都是搭配其他模块共同使用。 ,o):o五o lu!uo:m盖罡 北京邮电大学硕一l 毕业论文 2 3 2 2应用模块的组成 应用程序是b a t i k 包的扩展,目标是提供了一些可执行的应用程序,比如 s v g 浏览器,以便证实各个模块的有效性和交互性。 s q u i g g l e :是一个成熟的s v g 浏览器。它虽然并不像a d o b es v gv i e w e r 那 么复杂,但是提供的功能却非常有用。通过s q u i g g l e 可以查看、放缩、翻转s v g 图像,同时可以将s v g 文档保存为其他诸如j e p g 、t i f f 和p n g 等格式的图片。 s v gr a s t e r i z e r :s v g 格式转换说明。 s v gf o n tc o n v e r t e r :这个应用程序可以将任何形式的字体转换成s v g 的字 体格式。 s v gp r e t t yp r i n t e r :这个应用主要针对x m l 文档的阅读,如果一份x m l 文档的结构不是很好,那么这个程序将为你将这份文档进行整理,使它的可阅读 性变得更好。 2 3 3s v gd o m a p i d o ma p i 定义了一个接口叫做d o m i m p l e m e n t a t i o n ,这个接口用来表现任 意d o mi m p l e m e n t a t i o n 之间的连接【3 】。这个类的作用是通过提供方法创建一个 d o c u m e n t 来连接一个指定的d o m 实例。然后具体的d o c u m e n t 表现为一个x m l d o c u m e n t 并且跟各种各样的d o m 对象工厂比如e l e m e n t ,a t t r ,t e x t 那样动作。 以下例子表示怎样获取一个具体的d o m i m p l e m e n t a t i o n 对象: i m p o r to r g w 3 c d o m d o m i m p l e m e n t a t i o n ; i m p o r to r g a p a c h e b a t i k d o m s v g s v g d o m i m p l e m e n t a t i o n ; d o m i m p l e m e n t a t i o ni m p l = s v g d o m i m p l c m e n t a t i o n g e t d o m i m p l e m e n t a t i o n 0 ; 一旦你已经拥有了一个d o m i m p l e m e n t a t i o n 实例,你将不能再依赖于b a t i k 的指定代码而要准备好使用d o ma p i 了。 2 3 3 1 创建一个d o c u m e n t 使用d o m i m p l e m

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论