2016-10-12 4 views

ответ

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

Вы можете увидеть пример кода: http://codepen.io/rbrander/pen/bwKqVN –

+1

Ваше решение выглядит неплохо - upvote, вы можете опубликовать код в своем ответе, чтобы избежать потенциального гниения. :-) – markE

Смежные вопросы