2016-10-12 89 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