2016-10-12 49 views
1

帆布垂直文本:写在画布上

y 
a 
x 
i 
s 
x axis 

我如何写一个垂直画布上?例如:文字yaxis

回答

3

没有内置的方式,所以你必须设计一个解决方案。我会写一个函数来获取字符之间的字符串和空格,然后打印每个字符,增加垂直位置。

另一种更容易的方法是将画布旋转90度然后绘制文本,但这可能不是您要查找的内容。

示例代码(来自codepen):

CanvasRenderingContext2D.prototype.fillVerticalText = 
    function(text, x, y, verticalSpacing) { 
    for (var i = 0; i < text.length; i++) { 
     this.fillText(text[i], x, y + i * verticalSpacing); 
    } 
    } 
+0

我宁愿做没有旋转整个画布。 – Pete

+0

你可以看到一个示例codepen:http://codepen.io/rbrander/pen/bwKqVN –

+1

你的解决方案看起来不错 - upvote,你可以发布codepen到你的答案,以避免潜在的链接腐烂。 :-) – markE