Avatar billede robertdhn Nybegynder
05. august 2006 - 23:10 Der er 3 kommentarer

rgb til grayscale

Jeg sidder med en udfordring som jeg ikke er helt sikker på kan løses?

Jeg skal lave en kode der virker i flash player 7. Koden skal grayscale et movieclip så indholdet (et farve billede) bliver sort/hvid.

Jeg har koden der virker i player 8 (men jeg skal ha' det til at virke i 7'eren):

import flash.filters.BitmapFilter;
import flash.filters.ColorMatrixFilter;

desaturation = 0;
this.onEnterFrame = function(){

if(desaturation = 1){
des = -0.05;
}
desaturation += des;

image_mc.filters = new Array(getDesaturationFilter(desaturation));
}

function getDesaturationFilter(t:Number):BitmapFilter{
t = t != undefined ? t : 1;
var r = 0.212671;
var g = 0.715160;
var b = 0.072169;
return new ColorMatrixFilter(
[t*r+1-t, t*g, t*b, 0, 0,
t*r, t*g+1-t, t*b, 0, 0,
t*r, t*g, t*b+1-t, 0, 0,
0, 0, 0, 1, 0]);
}
Avatar billede thulstrup Nybegynder
06. august 2006 - 11:30 #1
BitmapFilter og ColorMatrixFilter virker kun i Flash 8 og nyere.
Avatar billede robertdhn Nybegynder
06. august 2006 - 14:12 #2
det ved jeg, jeg søger et alternativ i flash 7... er der noget?
Avatar billede thulstrup Nybegynder
07. august 2006 - 08:52 #3
Nej, det er ikke muligt at lave greyscale i flash 7.

Den mest advancerede farveredigering du kan lave i Flash 7, er med setTransform metoden:

var clr:Color = new Color(image_mc);
clr.setTransform({ra:50, rb:244, ga:40, gb:112, ba:12, bb:90, aa:40, ab:70});
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester