Рисование ХОРОШЕГО ВИДА (как во Flash) линий на холсте (HTML5) - возможно?

Есть ли способ нарисовать линию с помощью javascript и холста с «лучшим» сглаживанием, например Flash умеет?

Я знаю трюк Math.floor (corre) +0,5, чтобы получить ровно 1 пиксельную линию, когда она вам нужна, но я не это имел в виду. Следующие синие линии, нарисованные с использованием холста, выглядят неуклюже в всех браузерах , поддерживающих html5 и cavas, поэтому они, вероятно, используют один и тот же плохой алгоритм сглаживания (вероятно, кодирован для скорости, а не для лучшего визуального впечатление). То же самое, независимо от ширины линии (на самом деле, чем толще, тем некрасивее):

Обрезка скриншота синих линий 1 пиксель:

alt text

и 3 пикселя:

alt text

Как видите, это не самый красивый способ нарисуйте хорошие линии сглаживания , и только нижняя линия выглядит хорошо. Клиент требует, чтобы приложение для работы с графами, над которым я работаю , должно "хорошо выглядеть" и очень требовательно с точки зрения эстетики, и я, вероятно, откажусь от решения HTML5 / Canvas и выберу Flash, если Я не могу решить эту проблему . Или, может быть, я мог бы написать хороший алгоритм рисования линий со сглаживанием на javascript (может ли кто-нибудь дать мне какие-то ресурсы для этого?) Извините за то, что не добавил картинку с линиями, нарисованными во Flash, но дело в том, что они просто хорошо выглядят, сглаживание сделано правильно .

11
задан NeuronQ 14 November 2010 в 21:45
поделиться