2013-11-14 6 views
3

Когда я рисую текст холст, я получаю уродливые шипы, как это:Как предотвратить уродливые всплески в рендеринг шрифта холста?

enter image description here

Попробуйте здесь: http://jsfiddle.net/48m4B/

В то время как, например, в фотошопе, я получаю это:

enter image description here

Код просто классический strokeText:

ctx.font = '20px Arial'; 
ctx.lineWidth = 15; 
ctx.strokeStyle = '#fff'; 
ctx.strokeText('How to prevent ugly spikes?'); 

Если это невозможно исправить, существует ли какое-либо обходное решение?

+1

+1 за удивительный остроконечный эффект ... –

ответ

5

Попытка установить линии присоединиться к:

ctx.lineJoin = 'round'; 

вы также можете настроить предел митры:

ctx.miterLimit = 2; 

Modified working fiddle

+1

Большой ответ @Ken Fyrstenberg +1 - вот он в jsfiddle - http://jsfiddle.net/48m4B/1/ - :) –

+1

Tha nks @jonathan, ваш комментарий пришел в то же время, я также обновил свой ответ скрипкой. :) – K3N

+0

Отлично! Благодаря! –