Gahing's blog Gahing's blog
首页
知识体系
  • 前端基础
  • 应用框架
  • 工程能力
  • 应用基础
  • 专业领域
  • 业务场景
  • 前端晋升 (opens new window)
  • Git
  • 网络基础
  • 算法
  • 数据结构
  • 编程范式
  • 编解码
  • Linux
  • AIGC
  • 其他领域

    • 客户端
    • 服务端
    • 产品设计
软素质
  • 面试经验
  • 人生总结
  • 个人简历
  • 知识卡片
  • 灵感记录
  • 实用技巧
  • 知识科普
  • 友情链接
  • 美食推荐 (opens new window)
  • 收藏夹

    • 优质前端信息源 (opens new window)
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Gahing / francecil

To be best
首页
知识体系
  • 前端基础
  • 应用框架
  • 工程能力
  • 应用基础
  • 专业领域
  • 业务场景
  • 前端晋升 (opens new window)
  • Git
  • 网络基础
  • 算法
  • 数据结构
  • 编程范式
  • 编解码
  • Linux
  • AIGC
  • 其他领域

    • 客户端
    • 服务端
    • 产品设计
软素质
  • 面试经验
  • 人生总结
  • 个人简历
  • 知识卡片
  • 灵感记录
  • 实用技巧
  • 知识科普
  • 友情链接
  • 美食推荐 (opens new window)
  • 收藏夹

    • 优质前端信息源 (opens new window)
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 前端基础

    • 编程语言

      • CSS

      • HTML

        • LearningHTML
        • htmlparser实现
        • inline-block 文本宽度溢出问题
        • svg笔记
          • svg坐标系统
          • <marker>
        • css与js的阻塞关系
        • document-write重写
        • getElementsByClassName遍历时出现的问题
        • 前端小知识-格式化标签
        • 前端监听资源加载错误
        • 浅谈 View Transitions API
        • 通读 HTML Standard
      • JavaScript

      • Rust

      • TypeScript

      • WebAssembly

    • 开发工具

    • 前端调试

    • 浏览器原理

    • 浏览器生态

  • 应用框架

  • 工程能力

  • 应用基础

  • 专业领域

  • 业务场景

  • 大前端
  • 前端基础
  • 编程语言
  • HTML
gahing
2019-02-21
目录

svg笔记草稿

# svg坐标系统

# <marker>

作为标记使用,子元素可以整合path等使用

markerWidth和markerHeight控制整体的显示大小

refX和refY可以将整体进行某个方向的偏移

viewBox 定义了一套坐标系(x, y, width, height)

举例:

<defs>
          <marker
            id="arrow"
            markerUnits="strokeWidth"
            markerWidth="8"
            markerHeight="8"
            viewBox="0 0 100 100"
            refX="10"
            refY="20"
            orient="auto">
            <!-- <path
              d="M2,2 L10,6 L2,10 L6,6 L2,2"
              style="fill: gray" /> -->
            <polygon
              points="0,0 10,20 0,40 60,20"
              stroke="gray"
              fill="gray"
              stroke-width="1px"/>
          </marker>
        </defs>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

在viewBox="0 0 100 100"这个坐标系中,定义了一个polygon多边形箭头,按points="0,0 10,20 0,40 60,20"连线。

其中(10,20)为箭头的凹点,在未定义marker的refX/Y时,其他svg通过marker-end="url(#arrow)"导入在箭头时,连接点为(0,0),两者错位了

所以我们需要将marker的坐标系统相对移动,这里选择了凹点(10,20)这个点,故refX="10" refY="20"

编辑 (opens new window)
上次更新: 2024/09/01, 23:56:56
inline-block 文本宽度溢出问题
css与js的阻塞关系

← inline-block 文本宽度溢出问题 css与js的阻塞关系→

最近更新
01
浅谈代码质量与量化指标
08-27
02
快速理解 JS 装饰器
08-26
03
Vue 项目中的 data-v-xxx 是怎么生成的
09-19
更多文章>
Theme by Vdoing | Copyright © 2016-2024 Gahing | 闽ICP备19024221号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式