-
Notifications
You must be signed in to change notification settings - Fork 37
Open
Description
Just want to inform you.
We had a problem with kineticjs which might be in concrete too.
best regards Tobias & Dennis from SinusQuadrat
getImageData gives back wrong colors in Safari iOS10 iPad. (Tested on an early iPad Air)
Colors values higher than 240 differ 1 from the originaly set value. This breaks the function of hitCanvas and colorIndex / coloKey and getIntersection.
Our solution in kineticjs is to use ios save colors for identifiers:
getRandomColor: function(iosSave) {
var randColor;
if(iosSave){
randColor = (Math.random() * 0xadcea0 << 0).toString(15);
}else{
randColor = (Math.random() * 0xFFFFFF << 0).toString(16);
}
while (randColor.length < 6) {
randColor = ZERO + randColor;
}
return HASH + randColor;
}
to test independet (canvas in html needed, loggs differing values):
dndcanvas = document.getElementById("dndcanvas");
var ctx = dndcanvas.getContext('2d');
ctx.clearRect(0, 0, dndcanvas.width, dndcanvas.height);
for (var i = 0; i <= 255; i++) {
ctx.fillStyle = 'rgb(230,230,' + i + ')';
ctx.fillRect(i, canvasObj.y-35, 1, 1);
var p = ctx.getImageData(i, canvasObj.y-35, 1, 1).data;
if (i != p[2]) {
console.log(p[2]);
}
}
GuichiZhao
Metadata
Metadata
Assignees
Labels
No labels