vml简介

VML(Vector Markup Language)
是一个最初由Microsoft开发的XML词表,现在也只有IE5.0以上版本对VML提供支持。使用VML可以在IE中绘制矢量图形,所以有人认为VML就是在IE中实现了画笔的功能。下面介绍一下VML的优点:
基于XML标准
XML是公认拥有无穷生命力的下一代网络标记语言, VML具有先天的优势,它的表示方法简单,易于扩展等等。
支持高质量的矢量图形显示
VML支持广泛的矢量图形特征,它们基于由相连接的直线和曲线描述路径。在VML中使用两个基本的元素:shape和group。这两个元素定义了VML的全部结构;shape描述一个矢量图形元素,而group用来将这些图形结合起来,这样它们可以作为一个整体进行处理。
VML规范包括大量的支持多种不同矢量图形特征的元素。下面是VML的预定义图形元素:
l Shape
l Path
l Line
l Polyline
l Curve
l Rect
l Roundrect
l Oval
l Arc
l Group
由文本构成的图像,并可集成到HTML
由于VML使用简单的文本来表示图像,这样就可用很少的字节来表示比较复杂的图像。VML与HTML兼容,通过在HTML中声明VML命名空间并声明处理函数,就可以和其他HTML元素一样使用VML元素,在客户端浏览器显示图像。VML标记里面可以定义DHTML大部分属性和事件,比如说id, name, title, onmouseover 等等。
支持交互与动画
但VML的功能不只是绘图,他还可以在图形中嵌入文本,并可实现超链,还可通过脚本语言实现一定的动画功能。

VML是The Vector Markup Language的缩写。

参考网站
MSDN:http://msdn.microsoft.com/workshop/author/vml/shape/introduction.asp

W3C:http://www.w3.org/TR/NOTE-VML

首先需要在<HTML> 标签中加上如下引用




<HTML xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office">
...
</HTML>

如果没有您没有用到OFFICE的扩展功能的话,您可以忽略第二个schema。
同时,您需要在STYLE元素中注册VML和Microsoft Office Extensions




v\:* { behavior: url(#default#VML); }
o\:* { behavior: url(#default#VML); }

如果没有您没有用到OFFICE的扩展功能的话,您可以忽略第二个样式的定义。

下面说说常用的几个元素

1.Shape元素
用法:<v:shape ...></v:shape>

它的常用属性:
FillColor:图象填充色。
标签语法:
<v:element fillcolor="expression">
脚本语法:
element.fillcolor="expression"
expression=element.fillcolor

Path:指定绘画的路径
脚本用法:
<v:shape id="rect01"
fillcolor="red" strokecolor="red"
coordorigin="0 0" coordsize="200 200"
style="position:relative;top:1;left:1;width:20;height:20"
path="m 1,1 l 1,200, 200,200, 200,1 x e">
</v:shape>
说明:用字母m(moveto命令)定义图象初始点的坐标,例子中为(1,1)
用字母l(小写的L字母,lineto命令)开始画线,先画到(1,200),再画到(200,200),再画到(200,1)
用字母x(close命令)关闭线条
用字母e(end命令)结束
注意:每两个数字组成一个坐标

Title:鼠标移动到图象上时的提示文字
Style:图象的样式
Filled:决定闭合路径中是否需要填充(True/False)
StrokeColor:图象路径的颜色

2.Shape元素有效的子元素

TextBox:在图象中定义一个文本框
用法:
<v:shape>
<v:textbox>VML</v:textbox>
</v:shape>
TextPath:设置文字路径,要使用该属性,path属性的TextPathOK一定要为true;并且TextPath的on属性要为true

详细说明文挡请上参考网站查阅!!!

简单的例子:




<HTML xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office">
<HEAD>
<STYLE>
v\:* { behavior: url(#default#VML);}
o\:* { behavior: url(#default#VML);}
</STYLE>
<TITLE>VML Sample</TITLE>
</HEAD>
<BODY>
<v:shape
fillcolor="green"
style="position:relative;top:1;left:1;width:200;height:200"
path = "m 1,1 l 1,250, 250,500, 500,500, 500,250, 250, 1 x e"
title="test"
strokeColor="yellow">
<v:fill type='gradient' id='fill1' color='red'/>
<v:textbox>VML</v:textbox>
</v:shape>
</BODY>
</HTML>

(0)

相关推荐

  • vml简介

    VML(Vector Markup Language) 是一个最初由Microsoft开发的XML词表,现在也只有IE5.0以上版本对VML提供支持.使用VML可以在IE中绘制矢量图形,所以有人认为VML就是在IE中实现了画笔的功能.下面介绍一下VML的优点: 基于XML标准 XML是公认拥有无穷生命力的下一代网络标记语言, VML具有先天的优势,它的表示方法简单,易于扩展等等. 支持高质量的矢量图形显示 VML支持广泛的矢量图形特征,它们基于由相连接的直线和曲线描述路径.在VML中使用两个基本

  • JS页面动态绘图工具SVG,Canvas,VML介简介

    说到绘图.报表之类的技术,大家首先想到的就是Flex,当然也有许多了解javaapplet,对于这两种技术来说,各有利弊. 首先Flex很笨重,但是其效果实在让人喜欢.对于javaapplet来说,至少我在网络上很少看到,当然对于我们做开发的来说在我们的开发工具或者内部网络上还是有一些的. 其实现在Web上进行绘图的话还是有很多选择的,你可以到谷歌上搜索JS绘图,会有很多绘图工具提供给你使用,而且功能非常强大.比如说maxGraph,你可以到http://www.jgraph.com/mxgra

  • 欢迎品尝用vml画的苹果~~

    v\:*{behavior:url(#default#VML)} [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] v\:*{behavior:url(#default#VML)} [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] Tags:欢迎品尝用vml画的苹果~~ 相关文章 2006-12-12VML网页文件的基本格式 2006-12-12何为"VML".VML的基底知识 2006-12-12VML的基本概念 2006-12-12放大缩小VML 2006-12

  • 建立WEB两大经典!《VML极道教程》+FlashVml(闪耀之星)3.0中/英文版联合发布!

    该贴的内容,请务必字句阅读,因为这是免费赠送给所有WEBIT人的一个技术大蛋糕! 注释:以下所有的URL演示地址,因人流问题会较慢,其加载时请耐心等待,并尝试使用不同地址分流. <VML极道教程>简介: 以学图用为目标追求.以效求速为极道教程.目前一本相当完整的中文(VML教程+参考手册)合本.此书将使你彻底的精通VML标记.熟悉DVML编程.进而转战WEB实际开发.无论你是笨人.常人.聪明人.IT精英,只要你肯学,熟读本书你就能彻彻底底的精通VML.你或可纯手写代码,实现简单的VML应用.你

  • VML应用实例大全

    <HTML xmlns:v> <HEAD> <META http-equiv="Content-Type" content="text/html; Charset=gb2312"> <META name="GENERATOR" content="网络程序员伴侣(Lshdic)2004"> <META name="GENERATORDOWNLOADADDRESS&q

  • Xml简介_动力节点Java学院整理

    XML(简介) XML(可扩展标记语言)在 20 世纪 90 年代后期登上舞台后,就一直是众多活动和狂热思索的焦点.XML 只是基于普通文本,但却提供了几乎可以在任何两个应用程序间共享数据的方式. 虽然 XML 在概念上很简单,但对 XML 的处理却通常很烦琐(需要编写大量重复性的代码)和复杂(很多容易被忽视的细节导致错误). 什么时候使用 XML? 什么时候在Web 应用程序中使用 XML? 你需要处理已经保存在 XML 中的数据时. 你希望用 XML 保存数据并为将来可能的整合做准备时.

  • backbone简介_动力节点Java学院整理

    简介 Web 应用程序越来越关注于前端,使用客户端脚本与 Ajax 进行交互.由于 JavaScript 应用程序越来越复杂,如果没有合适的工具和模式,那么 JavaScript 代码的高效编写.非重复性和可维护性方面会面临挑战.模型-视图-控制器 (MVC) 是一个常见模式,可用于服务器端开发以生成有组织以及易维护的代码.MVC 支持将数据(比如通常用于 Ajax 交互的 JavaScript Object Notation (JSON) 对象)从表示层或从页面的文档对象模型 (documen

  • 简介可以自动完成UI的AngularJS工具angular-smarty

    我们最近为我们的论坛增加了一个自动完成功能(称为Smarty),在要求专业人员简介的主页上.这是一个超有用的功能,因为它有助于我们将用户导航到他们真正想去的地方.它很有意思,也是用AngularJS构建的! 我们希望Smarty能够: 通过用户的给定输入 (一个前缀),通过一个HTTP请求后自动提供建议 显示一个建议的下拉列表 当用户输入时更新 足够快,能够跟得上用户的输入 导航直观且能够关闭 可重用 以往没有AngularJS的经验,这个项目是我使用这个框架的入门项目.它真的成为了一次宝贵的学

  • oracle逻辑运算符与其优先级简介

    Oracle的逻辑运算符也是用在SQL语句中必不可少的因素,一共有三个 逻辑运算符 意义 and 双值运算符,如果左右两个条件都为真,则得到的值就为真 or 双值运算符,只要左右两个条件有一个为真,则得到的值就为真 not 单指运算符,如果原条件为真,则得到真,如果元条件为假,反之如果原条件为假,则结果为真 Oracle的逻辑运算符也是用在SQL语下面使一些例子: Select * from emp where sal > 2000 and job = 'SALESMAN'; 寻找那些工资高于2

  • oracle求字符串长度函数length()和hengthb()简介

    lengthb(string)计算string所占的字节长度:返回字符串的长度,单位是字节 length(string)计算string所占的字符长度:返回字符串的长度,单位是字符 对于单字节字符,LENGTHB和LENGTH是一样的. 如可以用length('string')=lengthb('string')判断字符串是否含有中文. 注: 一个汉字在Oracle数据库里占多少字节跟数据库的字符集有关,UTF8时,长度为三. select lengthb('飘') from dual   可查

随机推荐