美文网首页svg
SVG defs和use

SVG defs和use

作者: YU_XI | 来源:发表于2018-06-05 16:00 被阅读0次

SVG DEFS元素
SVG的<defs>元素用于预定义一个元素使其能够在SVG图像中重复使用。例如你可以将一些图形制作为一个组,并用<defs>元素来定义它,然后你就可以在SVG图像中将它当做简单图形来重复使用。看下面的例子:

<svg xmlns="http://www.w3.org/2000/svg">
<defs>
<g>
<rect x="100" y="100" width="100" height="100" />
<circle cx="100" cy="100" r="100" />
</g>
</defs>
</svg>
在<defs>元素中定义的图形不会直接显示在SVG图像上。要显示它们需要使用<use>元素来引入它们。如下面的代码所示:
<svg
xmlns="http://www.w3.org/2000/svg">
<defs>
<g id="shape">
<rect x="50" y="50" width="50" height="50" />
<circle cx="50" cy="50" r="50" />
</g>
</defs>

<use
xlink:href="#shape"
x="50"
y="50"
/>

<use
xlink:href="#shape"
x="200"
y="50"
/>
</svg>
要引用<g>元素,必须在<g>元素上设置一个ID,通过ID来引用它。<use>元素通过xlink:href属性来引入<g>元素。注意在ID前面要添加一个#。

在<use>元素中,通过x和y属性来指定重用图形的显示位置。注意在<g>元素中的图形的定位点都是0,0,在使用<use>元素来引用它的时候,它的定位点被转换为<use>元素x和y属性指定的位置。

下面是上面代码的返回结果:

上面SVG图像中绿色的圆点并不是示例代码的一部分。它们是用来显示2个<use>元素的x和y坐标的。

哪些元素可以被定义为defs中的元素呢?

你可以将下面的元素放入到<defs>元素中使用:

任何图形元素,如:rect,line等
g
symbol

相关文章

  • SVG defs和use

    SVG DEFS元素SVG的元素用于预定义一个元素使其能够在SVG图像中重复使用。例如你可以将一些图形...

  • H5 SVG 使用方式总结

    实际工作中,SVG大多数是用 +(或者symbol)+ + 的组合来使用的,defs ...

  • svg defs标签

    SVG 允许我们定义以后需要重复使用的图形元素。在defs元素中定义的图形元素不会直接呈现。你可以在你的视口的任意...

  • SVG use使用

    平时使用svg,都是当成图片来使用,直接用img标签像引入图片一样引入svg。现在认识一下SVG Sprite技术...

  • use_svg_display()

    用矢量图显示

  • Vue 加载 svg icon - “vue-svg-loade

    前面我们介绍了通过先将 svg 模板加载到 body 中,然后再通过 use 标签去实例化 svg 的方式去加载 ...

  • svg 实现渐变圆环旋转效果

    ...

  • SVG

    Menu SVG 实例 SVG 形状 SVG 实例 SVG 的 用来创建一个圆。cx 和 cy ...

  • 删除NSUserDefaults所有记录

    - (void)resetDefaults { NSUserDefaults * defs = [NSUserDe...

  • SVG学习笔记

    SVG学习笔记 简介 SVG使用XML来描述二维图形和绘图程序的语言。 SVG形状 SVG在HTML页面 SVG ...

网友评论

    本文标题:SVG defs和use

    本文链接:https://www.haomeiwen.com/subject/slxmsftx.html