Arris
@Arris
Сапиенсы учатся, играя.

Как починить уродливый radialGradient в FF?

Рисую канвасом сектор с радиальным градиентом. В хроме всё ок, в FF получаю какую-то ересь, причем проявляется она не на всех радиусах поворота сектора.

m6_1ylfllqwnpkyj9cuylljxsbm.png

Как это исправить?

JS Fiddle: https://jsfiddle.net/Arris/s2qvsd73/

P.S. FF 55, Win7
  • Вопрос задан
  • 377 просмотров
Решения вопроса 1
Arris
@Arris Автор вопроса
Сапиенсы учатся, играя.
Разумеется, ответ нашёлся только на StackOverflow.

Цитирую:

The error is due to an error converting the coordinates of the gradient from double to float and can be fixed by forcing the radial gradient coordinates to be Int32s

Bitwise or with 0 will convert from JS Number to Int32 (signed integer 32bits) and fix the problem.

var gradient = ctx.createRadialGradient(
    grad_x0 | 0, 
    grad_y0 | 0, 
    options.radius | 0, 
    options.x0 | 0, 
    options.y0 | 0, 
    0
);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы