svg webtopo原型(1)基本功能

考虑到svg也是html5的标准之一,考虑继续抽空把svgtopo原型移植完。

阻力:已经有webtopology开源包了,实现的功能基本类似

 

参照vml模型的顺序,先实现基本的文本和画线功能。

之前在前期探索中,已经完成了画矩形、画线的探索,包括ie/opera的兼容,中文处理等。因此基本功能还算顺利。

主要实现文本、线条的显示。

以及基本的js操作的简单封装。

兼容ie+asvopera

其中ie使用embed,opera动态创建。

注意:在opera上,如果不指定style,默认的线是看不见的。

测试页面1basic.htm

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>
图例
</title>

<!-- legengd.html
 1.显示文字、线
 2.兼容ie和opera.ie用embed(empty.svg,只包含一个组g1),
  opera用create
-->
</head>
<script type="text/javascript" language="javascript" src=".\js\svg.js"></script>
<script>

</script>

<body bgcolor="#ffffff">



<div id="divsvg">
<embed name="svg1" pluginspage="http://www.adobe.com/svg/viewer/install/" align="top" src="empty.svg" height=10 width=10 type="image/svg+xml">
</div>
</body>
<script>
var svg;
var plat;





function show(){
 //var svg;
 //ie使用embed方式预先加载svg
 svg=initSVG(200,200,1);
 var svgdoc;
 svgdoc=getSVGDocument(svg);
 plat=getrootg(svg,svgdoc);

 //位置为相对位置
 //超出范围会被截掉
 //生成一行文本
 curentStyle="stroke:black;fill:white";
 createText(svgdoc,5,20,"电路带宽图例",curentStyle);
 //生成一个矩形
 curentStyle="stroke:black;fill:green";
 createrect(svgdoc,100,100,3,curentStyle);
 //生成一条线
 curentStyle="stroke:black;fill:none;stroke-width:1";
 createline(svgdoc,0,0,200,0,curentStyle);
 curentStyle="stroke:red;fill:none;stroke-width:3";
 createline(svgdoc,0,0,0,200,curentStyle);
 curentStyle="stroke:blue;fill:none;stroke-width:5";
 createline(svgdoc,0,0,200,200,curentStyle);
 curentStyle="stroke:#3366ff;fill:red;stroke-width:5";
 createline(svgdoc,100,0,100,200,curentStyle);
 }
</script>
</html>


空的svg,只包含一个g1,作为底层。同时设置编码,可以支持中文显示

empty.svg

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"
  "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd" >
  
<svg width="100%" height="100%" xmlns="http://www.w3.org/2000/svg"
     xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="g1">

</g>
</svg>

基本封装的svg.js

http://download.csdn.net/detail/luqin1988/5005164

 


 以研究出很多模型,包括跨浏览器移动,缩放,3D,滤镜特效,动画,弹球,绘图,以及多款SVG游戏,如需要请留言。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
超强的Web在线矢量绘图器与监控系统 http://www.visual-graph.com/article/view.asp?id=1 工业图形网站:http://www.visual-graph.com 图形相关下载:http://www.visual-graph.com/down 图形相关技术:http://www.visual-graph.com/article 图形系统截图:http://www.visual-graph.com/gallery OnlineDraw是一个VG专为IE设计的矢量绘图组件。网页中有了VG,用户就可以直接在网页中绘制矢量图形、处理点阵图片,同时也可以做为一个可视化的图片上传客户端工具。OnlineDraw是一个标准的 COM控件产品,它本身只是一个"白板". 超强的Web在线矢量绘图器 OnlineDraw是一个VG专为IE设计的矢量绘图组件。网页中有了VG,用户就可以直接在网页中绘制矢量图形、处理点阵图片,同时也可以做为一个可视化的图片上传客户端工具。OnlineDraw是一个标准的 COM控件产品,它本身只是一个"白板",您可以根据您的具体需求,对他的所有工具条,图库列表,属性列表框等所有界面进行定制,定制的过程就是一个绘图的过程,所有的工具按钮和绘图事件都可以用 HTML 和 &#106avascript 来创建和激发。 简单几条语句即可在网站上实现功能拓展 控件本身是一个平台,全部功能均由VG内部,JS易于配合WB/S系统的图形绘制服务进行少量(二三十行代码)开发就可以出来了。完全的客户端控件,不增加服务器压力,一切功能均在客户端实现,无需服务器进行实时的数据计算,如果需要服务器的交互,VG也提供相应的接口与方法来在客户端与服务器端进行轻量级XML交互数据。 基于Visual Graph的OnlineDraw图形编辑工具经过近多年的深入研究与应用,有预见性地开发了大量具有潜在应用的功能,长期与用户互相合作,大量吸取用户应用经验,多年来的应用研究试验,Visual Graph终于被打造成图形应用领域里面的超级引擎,其中的OnlineDraw图形编辑器在Web上应用非常广泛,服务不断前进,在技术与质量上赢得了众多合作伙伴的心。OnlineDraw图形编辑器主要特点是: 1.包含编辑与运行状态,可以任意操纵与控制图形变化,实现各种仿真与建模。 2.图形和图库是统一的XML格式,便于传输、存储和维护,支持WEB开发。 3.响应众多的图形操作事件,任意给图形添加属性成函数,任意自定义图形。 4.可以建立和分析图形间的任意拓朴连接关系,实现各种逻辑运算与控制。 5.内含面向对象的Visual Graph脚本语言,简洁易用的COM类库接口。 6.每个图形都是对象,拥有众多的属性和函数,可以方便地编辑和操纵。 7.支持报表开发,表格高度智能,可以制作超酷图形界面,轻松换肤。 8.非常容易地开发出任何复杂变化的图形,轻松实现自己的图形库。 9.技术完善:多页面、多图层、表格图形混排、透明度、自由旋转、动画效果、自定义线型、网纹、箭头、自定义任意多个文字标注、自定义图元连接点、自定义光标、图形保护、控制点,支持图形的逻辑分组,允许图元嵌套构建更复杂的图元。 10.混合编程:不仅其他程序可以操控Visual Graph的一切,而且Visual Graph的脚本可以调用其他语言的程序,也可以调用DLL,任意扩充内部函数,扩展功能。脚本语言的编程习惯和一般语言相同,各种属性、函数名称也都相同。 尺寸小、速度快,运行稳定,能适应工业上机器常年工作等环境;能轻松作出工业上的各种动作设备以及常用的曲线图、棒图、尺寸线,实现工业的过程监控;能让软件公司在短时间内开发出高质量的组态监控软件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值