SVG.js Marker标记和自定义标签

一、SVG.Marker 添加标记

SVG.Marker 标记可以被添加到一个线,折线的各点,多边形和路径。有三种类型的标记:开始,中间和结束。如果开始表示第一个点,则结束中间的最后一点和中间点。

var draw = SVG(‘svg1‘).size(300, 300);
var line = draw.line(0, 0, 200, 150);
line.stroke(‘blue‘).move(20, 20);
//创建marker,声明时指定宽度和高度,在标记处添加的形状超出部分会隐藏
var marker1 = draw.marker(10, 10, function (add) {
    add.rect(20, 20);
});
//添加到直线
line.marker(‘start‘, marker1);
//获取引用
var ref1 = line.reference(‘marker-start‘);
console.info(ref1);
//修改标记的大小,size()/width()/height()
ref1.size(20, 20);
//更改标记内容
marker1.update(function (add) {
    add.circle(10).fill(‘#f09‘);
});

2.实例

var draw = SVG(‘svg1‘).size(300, 300);
//SVG.Marker 标记可以被添加到一个线,折线的各点,多边形和路径。有三种类型的标记:开始,中间和结束。如果开始表示第一个点,则结束中间的最后一点和中间点。
var path = draw.path(‘M0 0 A50 50 0 0 1 50 50 A50 50 0 0 0 100 100‘);
path.fill(‘none‘).move(20, 20).stroke({ width: 1, color: ‘#ccc‘ });
path.marker(‘start‘, 10, 10, function (add) {
    add.circle(10).fill(‘#f06‘);
});
path.marker(‘mid‘, 10, 10, function (add) {
    add.rect(5, 10).cx(5).fill(‘#ccc‘);
});
path.marker(‘end‘,20,20,function(add){
    add.circle(6).center(4,5);
    add.circle(6).center(4,15);
    add.circle(6).center(12,10);
    this.fill(‘#0f9‘);
})

二、SVG.Bare 添加自定义标签

//SVG.Bare 添加自定义标签,不会在页面中显示
//element() 创建标签
//var element=draw.element(‘title‘);
var element = draw.element(‘symbol‘, SVG.Parent);// <symbol id="SvgjsSymbol1008">测试标签</symbol>
//words() 设置标签内容
element.words(‘测试标签‘);// <title id="SvgjsTitle1008">测试标签</title>

更多:

SVG.js Mask覆盖和ClipPath裁剪

SVG.js 图案使用和use引用

SVG.js 颜色渐变使用

时间: 2024-12-28 21:29:49

SVG.js Marker标记和自定义标签的相关文章

SVG.js 引用获取整理

一.SVG.get() 根据id获取元素 var draw = SVG('svg1').size(300, 300); var circle = draw.circle(50); circle.fill('red').move(10, 10); //添加类 circle.addClass('circle'); //设置ID circle.id('circle'); //SVG.get() 获取Element对象 var circle2 = SVG.get('circle'); console.i

SVG.js 元素操作整理(一)

一.属性操作Attributes var draw = SVG('svg1').size(300, 300); //attr() 属性操作 //设置属性的值 var rect = draw.rect(100, 100); rect.attr('x', 50).attr('y', 50); rect.attr({ fill: '#f06', 'fill-opacity': 0.5, stroke: '#000', 'stroke-width': 10 }); //删除属性 rect.attr('f

怎样使用自定义标签简化 js、css 引入?

国庆将至,工作兴致全无,来总结点项目里平时不起眼干货. 前端引入 js .css 一般是这样: <script type="text/javascript" src="webContent 相对路径"></script> <link type="text/css" href="webContent 相对路径" rel="stylesheet"/> 简化后的 js .css

使用原生js创建自定义标签

使用原生js创建自定义标签 效果图 代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA

SVG 使用marker画箭头(一)

一.使用Marker画箭头 1.定义一个箭头的marker引用 <defs> <marker id='markerArrow' markerWidth='13' markerHeight='13' refx='2' refy='6' orient='auto'> <path d='M2,2 L2,11 L10,6 L2,2' style='fill:#00ff00' /> </marker> </defs> 注:orient="auto

Django(七)—— 模板层:变量、过滤器、标签、自定义标签和过滤器

模板层:变量.过滤器.标签.自定义标签和过滤器 将页面的设计和Python的代码分离开会更干净简洁更容易维护. 我们可以使用 Django的 模板系统 (Template System)来实现这种模式 # django模板修改的视图函数 def current_time(req): from django.template import Template,Context now=datetime.datetime.now() t=Template('<html><body>现在时刻

JSP自定义标签

假设 向浏览器输出当前客户的IP地址 ,我们现在可以这样写 <% //获取当前用户的IP地址 String ip=request.getRemoteHost(); out.print("当前用户的IP地址是:"+ip); %> 但我们现在为了要在jsp页面尽量减少java代码,这个时候我们可以向前面学标签一样,自己来定义一个标签,通过调用标签来达到实现显示客户端的ip地址. 首先第一步我们要创建一个普通的java类,继承SimpleTagSupport类,叫标签处理器类(用

zTree更新自定义标签&gt;&gt;&gt;

zTree>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> x 本来想自己敲一个zTree的例子的>>> 但是一想zTree文档做的这么好,直接拷贝过来一个得了... 哈哈>>> <!DOCTYPE html> <html> <head> <

自定义标签-自定义注解

首先是4个自定义注解类StaticResourceType.java public enum StaticResourceType { LESS,CSS,JS} StaticResource.java @Target({ElementType.FIELD})@Retention(RetentionPolicy.RUNTIME)public @interface StaticResource { StaticResourceType type(); String path(); Dependenc