SVG脚本编程的一些技巧

来源:互联网 发布:lvs与nginx区别 编辑:程序博客网 时间:2024/05/19 07:42

1、在IE中如何调试SVG中的脚本

a、去掉IE设置中的“禁止脚本调试”

b、打开注册表,找到“[HKEY_CURRENT_USER\Software\Microsoft\Windows Script\Settings]”,设置"JITDebug"=dword:00000001

c、然后就可以用vs.net来进行调试了

2、解决IE中需要点击才能激活svg插件的问题

编写一个脚本文件(embed.js),在脚本文件中写下如下代码:

document.write("<embed id='mapObject' type='image/svg-xml' src='./map.svg' height='100%' width='100%' />");

在html代码中,插入SVG插件的代码这样写:

<div>
<script src="./js/embed .js" language="javascript"></script>
</div>

3、在SVG embed上绘制HTML元素

设置embed元素的“wmode”属性的值为“transparent”

4、矩阵变化参数(transform="matrix(a,b,c,d,e,f)")

平移变换(translate) : (1,0,0,1,tx,ty)

伸缩变换(scale) : (sx,0,0,sy,0,0)

旋转变换(rotate) : (cos(a),sin(a),-sin(a),cos(a),0,0),a是旋转的角度

X轴歪斜变换(skewX): (1,0,tan(a),1,0,0),a是歪斜的角度

Y轴歪斜变换(skewY): (1,tan(a),0,1,0,0),a是歪斜的角度

5、中文字体对应的英文名称

English Name Localized Name
SimSun 宋体
SimHei 黑体
FangSong_GB2312 仿宋_GB2312
KaiTi_GB2312 楷体_GB2312
YouYuan 幼圆
STSong 华文宋体
STZhongsong 华文中宋
STKaiti 华文楷体
STFangsong 华文仿宋
STXihei 华文细黑
STLiti 华文隶书
STXingkai 华文行楷
STXinwei 华文新魏
STHupo 华文琥珀
STCaiyun 华文彩云
FZYaoTi 方正姚体简体
FZShuTi 方正舒体简体
NSimSun 新宋体
LiSu 隶书

6、判断鼠标事件来源
在SVG中会经常遇到判断鼠标事件来源的问题,比如:鼠标单击或者双击、滚轮事件等等。这里做一个简单的

介绍。

判断鼠标是左键还是右键?
在onclick事件中,if(evt.button==0)则为左击,否则为右击
无论单击还是双击evt.detail==1
判断鼠标是单击还是双击?
在onclick事件中,if(evt.detail==2)则为双击,否则为单击
判断鼠标的滚轮事件?

function mousewheel()
{
origscale=root.currentScale;
origscale +=event.wheelDelta / 1200;
if (origscale > 0)
{
root.currentScale=origscale;
root.currentTranslate.x=midx*root.currentScale+event.offsetX*(1-root.currentScale/midscale);
root.currentTranslate.y=midy*root.currentScale+event.offsetY*(1-root.currentScale/midscale);

midscale=root.currentScale;
midx=root.currentTranslate.x/root.currentScale;
midy=root.currentTranslate.y/root.currentScale;
}
}

原创粉丝点击