HTML5 Canvas Setting Pixel Ratio убивает производительность - PullRequest
0 голосов
/ 18 сентября 2018

Работа над дисплеем сетчатки и установка соотношения пикселей устройства, согласно многочисленным статьям:

/* setting the device pixel ratio to 2 for retina display definitely improves sharpness
 * but kills performance */

_dpr = window.devicePixelRatio || 1;                    

/* to make the device pixel ratio work we have to scale the size of the canvas */
_myCanvas.height = ($("#myDiv").height()) * _dpr;
_myCanvas.width = ($("#myDiv").width()) * _dpr; 

_myCanvas.style.height = ($("#myDiv").height()).toString() + 'px';
_myCanvas.style.width = ($("#myDiv").width()).toString() + 'px';

_myCtx = _myCanvas.getContext('2d');
_myCtx.scale(_dpr, _dpr);

Это определенно работает: на дисплее сетчатки dpr равен 2;дисплей ОЧЕНЬ острее / четче, но производительность танков такова, что их невозможно использовать.Принудительное возвращение dpr к 1 делает дисплей немного размытым, но значительно ускоряется.

Есть идеи, почему это происходит?

...