У меня есть черно-белое изображение, и мне нужно внести некоторые коррективы в него - мне нужно увеличить его «видимость» (оно слишком серое, мне нужно сделать его темнее). Кто-нибудь знает, как воспроизвести настройку яркости Photoshop в AS3? Обратите внимание, что это НЕ то же самое, что настройка яркости во Flash. Разница в следующем:
- в PS: яркость регулирует только те пиксели, которые имеют цвет, отличный от белого. Он ничего не делает с белыми пикселями, поэтому белые пиксели на самом деле остаются белыми.
- в PS: яркость регулирует все пиксели, поэтому она влияет и на белые пиксели. Уменьшение яркости делает все изображение темнее; это непригодно для меня, и это именно то, что делает Flash (хотя там это называется «яркость»)
С помощью этой матрицы я смог воспроизвести яркость Flash:
var m:Array = new Array();
m = m.concat([1, 0, 0, 0, value]); // red
m = m.concat([0, 1, 0, 0, value]); // green
m = m.concat([0, 0, 1, 0, value]); // blue
m = m.concat([0, 0, 0, 1, 0]); // alpha
new ColorMatrixFilter(m);
... однако это именно то, что не работает, так как делает все изображение темнее, включая белые части.
Любые идеи, как воспроизвести настройку яркости PS? Или любая другая матрица, которая на самом деле сохраняет светлыми белые/светлые пиксели и затемняет более темные? Спасибо!