【发布时间】:2014-01-18 21:57:58
【问题描述】:
在下面的代码中,我想在 javascript 中旋转数组中每个元素的文本。如果我在填充文本之前使用例如ctx.rotate(Math.PI/10),它会旋转所有元素。文本的位置也会随着ctx.rotate(Math.PI/10) 而变化,如果我使用 90 度,ctx.rotate(Math.PI/2) 文本不会显示在画布上。
<html>
<canvas id="myCanvas" width="300" height="300" style="border:1px solid #d3d3d3;"></canvas>
<script>
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
var x = new Array("Day1","Day2","Day3","Day4","Day5");
ctx.rotate(Math.PI/10);
for(var i = 0; i < x.length; i++){
ctx.fillText(x[i],i*50+20,50);
}
</script>
</html>
正如我所说,我想自己旋转每个元素,并且每个元素的位置应该与上面代码中的非旋转文本中的位置相同。因此,每个元素都必须围绕自己的轴旋转。我怎样才能做到这一点?
【问题讨论】:
-
你应该定义一个 tau 常量。
标签: javascript html canvas rotation