跳到内容

组合图标

你可以通过嵌套 SVG 元素,把多个图标组合成一个图标。 当你希望基于现有图标创建自定义图标时,这种方式会很有用。

<script>
import Scan from '@ycloud-web/icons-svelte/icons/scan';
import User from '@ycloud-web/icons-svelte/icons/user';
</script>

<div class="app">
  <Scan size="48">
    <User
      size="12"
      x="6"
      y="6"
      absoluteStrokeWidth
    />
  </Scan>
</div>

这是合法用法,因为 SVG 可以嵌套,并且图标支持所有 SVG 属性。 你可以通过调整 xy 坐标,把内部图标放到需要的位置。

限制

组合图标时,需要确保 xy 坐标位于外层图标的 viewBox 范围内(24x24)。

与原生 SVG 元素组合

你也可以把 YCloud Icons 和原生 SVG 元素组合起来,构建自定义图标变体。

通知徽标示例

例如,可以通过 circle SVG 元素给图标添加一个通知徽标。

<script>
import Mail from '@ycloud-web/icons-svelte/icons/mail';

const hasUnreadMessages = true;
</script>

<div class="app">
  <Mail size="48">
    {#if hasUnreadMessages}
      <circle
        r="3"
        cx="21"
        cy="5"
        stroke="none"
        fill="#F56565"
      />
    {/if}
  </Mail>
</div>

文本元素示例

也可以使用 text SVG 元素给图标添加文本。

<script>
import File from '@ycloud-web/icons-svelte/icons/file';
</script>

<div class="app">
  <File size="48">
    <text
      x="7.5"
      y="19"
      font-size="8"
      font-family="Verdana,sans-serif"
      stroke-width="1"
    >
      JS
    </text>
  </File>
</div>

基于 ISC 许可证发布。