关于 svg 里面 circle 大小问题

2017-09-11 15:11:42 +08:00
 chenqh

有下而这段 html

<svg width="30" height="30" viewBox="0 0 100 100"  version="1.1" xmlns="http://www.w3.org/2000/svg">
          <circle r="45" cx="50" cy="50" stroke-width="8px"   fill="transparent"></circle>
          <circle r="45" cx="50" cy="50" stroke-width="8px"   fill="transparent" class="progress-bar"></circle>
        </svg>

结果通过审查,知道circle的大小是27*27
所以我有个问题

  1. 有没有办法在保证 svg 的大小是30*30的情况下,使 circle 的大小变成27*27
  2. 如果必须改变svg的大小30/(27/30)=33.3,这种做法你们都是这么做的吗?
3811 次点击
所在节点    HTML
1 条回复
ThomasChan
2017-09-15 15:09:09 +08:00
没看懂你的问题
svg width 30 height 30
viewBox 是 0 0 100 100
则 circle 的 27 = (30 * (45 / 100)) * 2

viewBox 对原画布尺寸 30 * 30 进行放大到了 100 * 100

所以放大后的 circle 是 90 * 90 的, 缩小回 30 * 30 的画布上就是 27 * 27 的。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/389747

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX