一.SVG.Pattern 图案设置

var draw = SVG('svg1').size(300, 300);
//SVG.Pattern 图案设置
var pattern = draw.pattern(20, 20, function (add) {
add.rect(20, 20).fill('#f06');
add.rect(10, 10);
add.rect(10, 10).move(10, 10);
});
//获取url的标识对象,returns 'url(#SvgjsPattern1234)'
var urlObj = pattern.fill();
console.info(urlObj); //url(#SvgjsPattern1008) //为圆设置图案,fill() 方法设置或获取图片对象
var circle = draw.circle(100);
circle.move(100, 100)
.fill(pattern);
//为矩形设置图案
var rect = draw.rect(100, 100);
rect.attr({ fill: pattern });
//修改图案,会覆盖以前的图片
pattern.update(function (add) {
add.circle(15).center(10, 10);
});

二.SVG.Use  元素的引用

1.

//SVG.Use  元素的引用
//使用元素简单地模拟另一个现有元素。主元素的任何更改将反映在所有使用实例上。
var rect = draw.rect(100, 100).fill('#f09');
var use = draw.use(rect);
use.move(100, 100);
//当rect修改时,use也会跟着修改
rect.animate(1000).fill('#f90');

2.SVG.defs()  的声明定义,当use()再显示

var draw = SVG('svg1').size(300, 300);
//SVG.defs() 的声明定义,当use()再显示
var rect = draw.defs().rect(100, 100).fill('#f09');
var use = draw.use(rect);
use.move(100, 100);
//当rect修改时,use也会跟着修改
rect.animate(1000).fill('#f90');

3.

var draw = SVG('svg1').size(300, 300);
//SVG.use() 使用外部文件
//这种方法是有用的,当你有复杂的图像已经创建。
//需要注意的是,外部图像(在你的领域)可能需要加载的文件与XHR。
var rect=draw.rect(100,100);
console.info(rect);
console.info(rect.node.id);
var use = draw.use(rect.node.id, 'svg1.svg')

更多:

SVG.js 颜色渐变使用

Svg.js 图片加载

SVG.js 文本绘制整理

SVG.js 图案使用和use引用的更多相关文章

  1. SVG.js 引用获取整理

    一.SVG.get() 根据id获取元素 var draw = SVG('svg1').size(300, 300); var circle = draw.circle(50); circle.fil ...

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

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

  3. SVG.js Mask覆盖和ClipPath裁剪

    一.SVG.Mask 覆盖物设置 1. var draw = SVG('svg1').size(300, 300); //SVG.Mask 覆盖物设置 var ellipse = draw.ellip ...

  4. svg.js教程及使用手册详解(二)

    上篇简要介绍了svg.js的基本信息和基本用法,这篇开始详细讲解svg.js的用法. SVG元素 SVG元素主要包括各种形状.线条.文本.路径. 矩形——Rect Rects有两个参数,即矩形的宽度和 ...

  5. SVG.js 元素操作整理(二)-Transform

    一.transform()获取或设置矩阵变换 var draw = SVG('svg1').size(300, 300); //Transforming SVG元素矩阵变换 var rect = dr ...

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

    一.属性操作Attributes var draw = SVG('svg1').size(300, 300); //attr() 属性操作 //设置属性的值 var rect = draw.rect( ...

  7. Svg.Js 父类的基础操作

    一.SVG.Doc 创建SVG文档 var draw = SVG('drawing') <div id="svg1"></div> <script&g ...

  8. svg.js教程及使用手册详解(一)

    做毕设的时候,因为要使用到画图和自定义动画,所以接触到了SVG.网上关于SVG和Canvas的对比很多,具体的辨析这里就不赘言.网上关于SVG的所谓教程基本上都是SVG本身,但是却没有一个针对svg. ...

  9. SVG操作插件:SVG.JS 个人提取部分实用中文文档

    先贴出github地址:https://github.com/svgdotjs/svg.js(也就是原文档的说明和文件的下载地址) 创建SVG文档 var draw = SVG('drawing'). ...

随机推荐

  1. Codeforces 280C Game on Tree 期望

    Game on Tree 这种题好像在wannfly训练营讲过, 我怎么又不会写啦, 我好菜啊啊啊. 我们按每个点算贡献, 一个点有贡献就说明它是被选中的点, 那么它被选中的概率就为1 / depth ...

  2. QT5:使用QFile类读写文本乱码

    我用的是QT5的QFile类实现的

  3. C++ map.insert: pair和make_pair区别

    C++ map.insert: pair和make_pair区别 \*********************************\ map<uint32_t, string> tem ...

  4. 网络爬虫中Fiddler抓取PC端网页数据包与手机端APP数据包

    1 引言 在编写网络爬虫时,第一步(也是极为关键一步)就是对网络的请求(request)和回复(response)进行分析,寻找其中的规律,然后才能通过网络爬虫进行模拟.浏览器大多也自带有调试工具可以 ...

  5. Xamarin-Android_BaseAdapter 简单的复用

    Xamarin-Android_BaseAdapter 简单的复用 缘由: 本人是一枚 小菜 初学Xamarin-Android  正在学习ListView 控件 发现这个控件的自定义布局 用的那叫一 ...

  6. 闭包应用之延迟函数setTimeout

    根据HTML 5标准,setTimeout推迟执行的时间,最少是5毫秒.如果小于这个值,会被自动增加到5ms. 每一个setTimeout在执行时,会返回一个唯一ID,把该ID保存在一个变量中,并传入 ...

  7. Web大前端面试题-Day2

    1.伪类与伪元素的区别? 1) 定义区别 伪类 伪类用于选择DOM树之外的信息,或是不能用简单选择器进行表示的信息. 前者包含那些匹配指定状态的元素,比如:visited,:active:后者包含那些 ...

  8. BZOJ2905: 背单词 AC自动机+fail树+线段树

    $zjq$神犇一眼看出$AC$自动机 $Orz$ 直接就讲做法了 首先对每个串建出$AC$自动机 将$fail$树找到 然后求出$dfs$序 我们发现一个单词 $S_i$是$S_j$的子串当且仅当$S ...

  9. j.u.c系列(06)---之锁条件:Condition

    写在前面 在没有Lock之前,我们使用synchronized来控制同步,配合Object的wait().notify()系列方法可以实现等待/通知模式.在Java SE5后,Java提供了Lock接 ...

  10. 接口开发-集成数据库操作(mybatis)

    关于数据存储,最常用的方式就是存到数据库,此篇以MySQL数据库为例,以mybatis框架完成数据库的操作. 一.添加对应依赖 <!-- 数据库:MySQL --> <depende ...