html - SVG 半圆 : Why is it rotated?

标签 html svg

我正在试验 SVG 元素。我正在尝试创建一个简单的半圆,但由于某种原因我的半圆旋转了?如何让半圆不旋转?

enter image description here

我的方法是:

  • SVG“ Canvas ”为 400 x 400 像素,半圆的半径为 180 像素
  • 移动点:20,200 - M20,200
  • LineTo:画一条 360px 长的线并且不改变 y 位置 - L360,0
  • ArcTo:画圆弧完成圆,圆弧半径为180px - A180,180 0 0,1 20,200

在代码中是这样的:

<svg width="400" height="400">
    <path d="M20,200 L360,0 A180,180 0 0,1 20,200 z"
        style="fill:#ff0000;
            fill-opacity: 1;
            stroke:black;
            stroke-width: 1"/>
</svg>

PS:如果我想创建一个只有 275 度的饼图,最好的方法是制作 2 条路径,一条 180 度(上面的半圆)和另一条 90 度的路径?或者是否可以使用 1 Path 创建它?是否有人愿意展示示例 SVG 代码?

最佳答案

使用 lineto command 时, uppercase-L (L) 指定绝对坐标,而 lowercase-L (l) 指定相对移动。您似乎想使用相对命令。

举个例子,W3 path's page 上的饼状图使用单一路径:

<path d="M300,200 h-150 a150,150 0 1,0 150,-150 z"
    fill="red" stroke="blue" stroke-width="5" />

生成此图像中的红色部分:

example image

请注意小写(相对)命令的自由使用。

关于html - SVG 半圆 : Why is it rotated?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8783817/

相关文章:

html - 响应式 HTML + CSS 自定义分界线 - IMAGE

javascript - 选择多个字母按钮时,它会替换文本输入

html - 文本全宽背景没有css但在Wordpress中只有html

css - 如何在 HTML5 Canvas 上使用外部 CSS 绘制 SVG

javascript - 根据值更新水位

css - Safari 上未显示 SVG CSS3 动画

Android HTML5 视频离线缓存

javascript - 为什么 jQuery :not selector attribute doesn't work for this scenario?

javascript - 使用 jQuery ui slider 更改 d3.js 绘制的矩形元素的高度

javascript - 在 SVG 上使用 skewX 和 skewY 时如何补偿平移