直接貼上~ 講解~
var gray:Array = new Array(); var rwgt:Number = 0.3086; var gwgt:Number = 0.6094; var bwgt:Number = 0.0802; gray = gray.concat([rwgt,gwgt,bwgt,0,0]);//R) gray = gray.concat([rwgt,gwgt,bwgt,0,0]);//G) gray = gray.concat([rwgt,gwgt,bwgt,0,0]);//(B) gray = gray.concat([0,0,0,1,0]); //(alpha) var myFilter:ColorMatrixFilter = new ColorMatrixFilter(gray); pic.filters = [myFilter];
灰階的RGB值就如 上面宣告的值一樣: R = 0.3086,G = 0.6094,B = 0.0802。
而gray陣列中的「concat」是做什麼用的呢?
ADOBE表示: concat,將參數中指定的元素和陣列中的元素連接,並建立新的陣列。 如果參數指定陣列,便會連接該陣列的元素。
沒記錯的話,運用這些陣列做一個線性代數的運算,並運用flash中的ColorMatrixFilter。
再讓「pic」(他是bitmap) 利用陣列中的「filter」方法,給bitmap點鎮圖新的參數,改變圖片本身的色調。
~Yeah~
----插圖----

留言