Fix сolor calculation

This commit is contained in:
Gleb Pospelov
2015-06-09 12:21:47 +03:00
parent d2208a39df
commit e5244fd4c5

View File

@@ -20,14 +20,16 @@
green = this.green(), green = this.green(),
blue = this.blue(), blue = this.blue(),
alpha = this.alpha(), alpha = this.alpha(),
i, brightness; i, brightness, ab, iab;
for (i = 0; i < nPixels; i += 4) { for (i = 0; i < nPixels; i += 4) {
brightness = (0.34 * data[i] + 0.5 * data[i + 1] + 0.16 * data[i + 2])/255; brightness = (0.34 * data[i] + 0.5 * data[i + 1] + 0.16 * data[i + 2])/255;
data[i] = brightness*red; // r ab = alpha * brightness;
data[i + 1] = brightness*green; // g iab = (1 - alpha) * brightness;
data[i + 2] = brightness*blue; // b
data[i + 3] = brightness*alpha; // alpha data[i] = red * ab + data[i] * iab; // r
data[i + 1] = green * ab + data[i + 1] * iab; // g
data[i + 2] = blue * ab + data[i + 2] * iab; // b
} }
}; };
@@ -92,7 +94,7 @@
return 0; return 0;
} }
else { else {
return Math.round(val); return val;
} }
}); });
/** /**