рисование на холсте с помощью createjs имеет псевдоним

У меня проблема с рисованием на холсте html5 с использованием библиотеки createjs. Рисунки не гладкие, а алиасинговые. Кажется, что у многих людей такая проблема только с хромом, но для меня она не отличается и в IE, и в firefox. Я также обнаружил, что должна быть возможность использовать alphamaskfilter для достижения сглаживания но я не знаю как. Если это путь, может кто-нибудь сказать мне, как это сделать?

Вот часть кода. Он использует движение мыши и рисует линию от того места, где мышь была раньше, до того места, где мышь находится сейчас:

var drawing = new createjs.Shape();
drawing.name = pathID.toString();
drawing.graphics.ss(point.width, "round").s(point.color);
drawing.graphics.mt(lastPoint.x, lastPoint.y);        
drawing.graphics.lt(point.x, point.y);

// Draw onto the canvas, and then update the container cache.
wrapper.addChild(drawing);
wrapper.updateCache("source-over");

person David_Z    schedule 26.06.2013    source источник
comment
Пожалуйста, добавьте свое решение в качестве ответа (и отметьте его как правильное), чтобы люди знали, что ваш вопрос больше не требует внимания.   -  person Simon Groenewolt    schedule 24.02.2014


Ответы (1)


Я нашел решение. Как ни странно, это становится гладким, если вы не указываете аргумент для wrapper.updateCache() следующим образом:

var drawing = new createjs.Shape();
drawing.name = pathID.toString();
drawing.graphics.ss(point.width, "round").s(point.color);
drawing.graphics.mt(lastPoint.x, lastPoint.y);        
drawing.graphics.lt(point.x, point.y);

// Draw onto the canvas, and then update the container cache.
wrapper.addChild(drawing);
wrapper.updateCache();
person David_Z    schedule 03.05.2014