filter in een flits,,,,,,,,, marktaandeel,,, delen, delen van,,,,,, het netwerk van maandag wat in tuts + koers zal dalen tot slechts drie dollar.Niet' niet missen.,, in deze handleiding, creëren we een filtering van programma 's, zodat de gebruiker met verschillende filters voor beeld van de intensiteit van het niveau, de vergelijking van de oorspronkelijke en de gefilterde beeld.We zullen gebruik maken van onze controle.,,,,,,, kort samengevat, zal er op drie niveaus: een script, een andere tekst van onderdelen en de laatste beelden.Opstelling van het programma bevat twee beelden, want een zal creëren in werking.Die versie zal een filter van toepassing is.Bovendien zullen worden gecreëerd in de werking van het masker zou worden gebruikt om aan te tonen dat de beelden na /verborgen, en ik heb je flash en behandelingen van de fundamentele kennis op 3.En toch ben ik nog steeds proberen om elke stap zo duidelijk mogelijk. Noot: in deze handleiding, wanneer de toevoeging van gebeurtenissen luisteraar, zal ik met een zwakke verwijzingen.Meer informatie over de zwakke verwijzing, zie dit blog, stap 1, het creëren van een nieuw script drie documenten.De vaststelling van de arena dimensie van 600 * 500px.Ik heb voor deze dimensie, want ik zal het gebruik van deze omvang zal de beelden in comfort, stap 2, het creëren van de drie genoemde niveau (dat wil zeggen "actie", "en de onderdelen van de tekst en beeld (origineel)").Sluit de "actie" laag, aangezien je niet nog iets toevoegen aan het script, laag, behalve, stap 3,. Selectie van de tekst en de toevoeging van een statische component "laag" filter "en de tekst" kracht "van de linker hoek.,, 4, - panel en slepen naar vijf knopen de twee blokken op het podium.Je kan ze van je houdt, aan de "standaard" op de etiketten van de waarde, de "zachte", "Verlichting", "de helderheid", de "negatieve".En geef ze de naam "default_btn", "blur_btn", "emboss_btn", "brightness_btn", en "negative_btn". Om helderheid slider voorbeeld naam "intensity_sld", zo heet het masker mask_sld "blok".,, noot: het is niet belangrijk, je masker af te zetten als we gebruik zal maken van behandelingen. Kom na plaatsing, terminologie: tijdens de les, ik noem "masker blok" of "mask_sld".Ook de "helderheid slider" en "intensity_sld.", 5 stappen, kan je nu opgesloten in de tekst - en laag.De volgende stap, de keuze van de beelden (oorspronkelijke) "laag, dan wil je in het beeld.Ik wil een foto met dandelion, stap 6, kiest de beelden en omzetten in een film... Symbolen.Ik heb het de naam "-", maar het is wat je wilt.Om ervoor te zorgen dat de registratie in de linker hoek.In de "senior" inspectie "script" bekijken en de uitvoer."Kader 1 uitvoer" automatisch moeten worden gecontroleerd.Voor de categorieën, de invoer van "photodandelion" verlaat de basis klassen "flash. Weergegeven. Videoclips".,, 7 stap is om de nieuwe film van voorbeelden van photooriginal naam... "".Je kan nu op "het beeld (oorspronkelijke)" laag.,, 8 stap filter op basis van kennis, Flash je de toestemming voor het gebruik van filters vergelijkbaar met photoshop.Je kunt de filters van de eigenschappen of door het script.Hier zijn een paar van de filters voorzien in: - een vage schaduw en licht, en, zoals het gebruik van behandelingen, kunnen een aanvraag indienen voor een filter, een door het "filter" eigenschap vertonen."Filter" toegewezen aan de waarde van de eigenschap moet een generator.Je kan ook het gebruik van meer dan één filter, ///////toepassing van een displayobject waas.Var BFilter: waas = nieuwe blurfilter (); de VAR - arrfilters: - = [BFilter]; displayobj.filters = arrfilters; 9 - filter, maatregelen), Flash ook steunen. Filter kan voeren in meer geavanceerde effecten, zoals de helderheid, de detectie, bedrukt, enz.) door de filters kan alleen worden gerealiseerd met behulp van matrix moet ook een beschrijving van elke de kleur moet pixels.- de matrix nodig, standaard var. ///////matrixdefault: - = [0, 0, 0, 0, 1, 0, 0, 0, 0]; ///////matrixbrighter licht var: - = [0, 0, 0, 0, 2, 0, 0, 0, 0]; ///////donker zonder werk matrixdarker: - = [0, 0, 0, 0, 0, 0, 0, 0, 0]; ///////matrixemboss verlichting var: - = [1, 1, 0, 1, 1, 1, 0, 1, 1 van de waarde van het Centrum;], is rond de pixel en pixel O.De standaardwaarde 1, waardoor de waarde zal het beeld wordt helderder.Het gaat om het verminderen van zwart geworden.Rechts en links op de positieve waarden die een negatieve waarde (of vice versa) het creëren van verlichting, gebruik van behandelingen, we kunnen een aanvraag indienen voor een product zoals dit: ///////filter, de volgende matrix op de beelden.Var matrixbrighter: - = [0, 0, 0, 0, 2, 0, 0, 0, 0]; var matrixcol: hoeveelheid = 3; kolom var matrixrow /steunbedrag: = 3; het werk cvfilter /nummer: convolutionfilter = nieuwe convolutionfilter (matrixcol, matrixrow, matrixbrighter); werk arrfilters: - = [cvfilter]; displayobj.filters = arrfilters; over het filter, meer informatie, zie de flash artikel 10 stappen.,, en nu moeten we het script code geschreven.De keuze van de eerste lijst van "operatie" laag, en in de ontwerpresolutie panel, stap 11, meestal vind ik in de loop van het programma om de tekst.Dus hier is de code van het lettertype (.) voor alle onderdelen van de invoer in de rest van de wereld, fl.managers.stylemanager; var formaat: tekst = de nieuwe tekst formaat ("Arial", 10, 0x000000); dit. SetStyle ("formaat" - formaat); 12 - stappen, laten we nu, Het creëren van een kopie van de foto 's (toepassing van het filter) en plaatsing in dezelfde positie, de originele foto' s.Ik moet gebruik maken van de versie van, omdat ik denk dat het indienen van een aanvraag voor een masker, het filter.Als je een wazige filter, misschien is het je opgevallen dat de waas is meer dan een masker.Dit is omdat de gevolgen van de toepassing van de filter is het masker, later zullen we het masker "photowrapper" is alleen van toepassing op photoeffected "filter". ////////versie, de VAR - photoeffected:photodandelion = nieuwe photodandelion (); photoeffected. X = photooriginal. X; photoeffected. Y - y; aan de photooriginal. (* * * * * * * photoeffected); ////////b) var photowrapper: Sprite = nieuwe Sprite (); photowrapper. X = photooriginal. X; photowrapper. Y = photooriginal. Y; var photoeffected:photodandelion = nieuwe photodandelion (); photowrapper. Addchild (photoeffected); addchild (photowrapper); de volgende stap 13,, het creëren van een lijn filtratie, scheiding van de originele foto 's.We zullen met een vorm van een lijn trekken.Het standpunt van het midden van de bodem van de foto 's van een lijn trekken, dan van onderop, var comparisonline: vorm = nieuwe vorm (); comparisonline. X = X + photooriginal. Photooriginal.width/2; comparisonline. Y = photooriginal. Y + photooriginal.height; comparisonline. Grafische. Type (1, 2, 0x999999, Waar comparisonline);. De grafische. Naar (0, 0); comparisonline. Figuur. Lineto (0, - photooriginal. Hoogte); addchild (comparisonline); 14 stappen, weet je, we hebben een gezicht met een glijbaan.Het gebruik van behandelingen, kunnen we de locatie in de foto 's en die voor dezelfde foto' s, de breedte van de breedte."De grootste" en "de waarde van de breedte van de breedte van de foto 's heeft bijgedragen tot het scheppen van een verhouding van 1: 1.Dus, hebben we niet nodig is om een grote omschakeling.Bovendien zullen we in de glijder pijl centrum, mask_sld. X = photooriginal. X; mask_sld. Y = photooriginal. Y + photooriginal.height; mask_sld.minimum = 0; mask_sld.maximum = photooriginal.width; mask_sld.value = photooriginal.width/2; mask_sld.width = photooriginal. Breedte 15 stappen;,, laten we nu tot de functie, als het masker slider gebeurtenissen.Wij hopen dat het masker. "Comparisonline" volgen."Licht" moet de breedte van de volgens het masker was de glijder.Ik weet dat we geen oplossing "masker" zeggen, maar dat is de volgende stap, de invoer van fl.events.sliderevent; de functionele masksliderdrag (EVT:sliderevent): ongeldig {comparisonline. X = evt.target.value + evt. Doelstellingen. X; photomask.width = evt.target.value;} mask_sld. AddEventListener (sliderevent.thumb_drag, masksliderdrag, valse, 0, 16, waar); zoals eerder vermeld, "masker" zal worden gebruikt ter dekking van de photowrapper "in plaats van" photoeffected ".Want het is een rechthoekig masker, we gebruiken een vorm.De positie en de omvang van de rechthoek die dezelfde "photooriginal".Om ervoor te zorgen dat je met een kleur die vorm (dit kan een kleur) of andere masker kan niet werken zoals verwacht.En het masker "photowrapper maskers en masker masker blok" waarden "van de breedte, de VAR - model: de vorm van nieuwe vorm (=); het masker van het licht. X = photooriginal. X; het masker van het licht. Y = photooriginal. Y; het masker van het licht. Figuur. Beginfill (0xff9900); het masker van het licht. Vorm van de drawRect (.. 0, 0, photooriginal.width, photooriginal. Hoogte); het masker van het licht. Figuur. Endfill (); addchild (masker); photowrapper.mask = het masker van het licht; photomask.width = mask_sld. Waarde;, stap 17, moeten We een manier voor de opslag van de laatste op een knop te drukken, zal de opslag in de" actieve ".Dit is na het gebruik van helderheid slider, var - filter: 18 knopen;, stappen, en dan zullen we de kracht van de glijbaan.De functie van de intensiteit van de definitie van "wij" het zal worden genoemd als de intensiteit van blok gesleept.Deze functie: een gebeurtenis (d.w.z. een klik met de muis), op basis van een druk op de knop.We zullen eerst uitschakelen, slider gebeurtenissen, de rol van de intensiteit (EVT:sliderevent) (APF: ongeldig. Dispatchevent (nieuwe gebeurtenissen (MouseEvent. Klik));} intensity_sld. AddEventListener (sliderevent.thumb_drag, de intensiteit, de valse, 0, waar); intensity_sld.enabled = vals; 19 stap, laten we nu te definiëren.."Standaard" en de "negatieve" van de functie van het filter is vergelijkbaar, ze uitschakelen, slider, waardoor de eigenschappen van de burgers niet moet worden bijgewerkt."Fuzzy", "Verlichting" en "licht", moeten ze opnieuw kunnen helderheid slider.Trouwens, ze gebruiken de waarde te bepalen van de intensiteit van de eigenschappen van het filter.Bovendien, elk filter heeft zijn eigen unieke "maximum", dus moeten we opnieuw berekenen "snapinterval"."Waarde" eigenschappen te berekenen, omdat ik denk dat ook de helft van de minimale en maximale vermindering van de tussen ons moet helderheid slider prestaties als "actieve" niet gelijk is aan de huidige doelstellingen, functies default_btnhandler (EVT:MouseEvent): ongeldig {VAR matrixdefault: - = [0, 0, 0, 0, 1, 0, 0, 0, 0]; var omschakeling: convolutionfilter = nieuwe convolutionfilter (3, 3, matrixdefault); photoeffected.filters = [de]; actieve filters = evt.target knopen; intensity_sld.enabled = vals;} functie blur_btnhandler (EVT:MouseEvent): ongeldig {als actieve filters.= evt. Doelstellingen) {intensity_sld.maximum = 30; intensity_sld.snapinterval = (intensity_sld.maximum - intensity_sld. Minimum) /40; intensity_sld.value = intensity_sld.maximum/2;} var blurx: hoeveelheid = intensity_sld.value; var bewijs: de hoeveelheid = intensity_sld.value; photoeffected.filters = [nieuwe waas (blurx, wazig, bitmapfilterquality. Hoge actieve filters)]; = = = = = = = waar evt.target knopen; intensity_sld.enabled;} functie emboss_btnhandler (EVT:MouseEvent) (Bron: ongeldig {als filter.= evt. Doelstellingen) {intensity_sld.maximum = 4; intensity_sld.snapinterval = (intensity_sld.maximum - intensity_sld. Minimum) /40; intensity_sld.value = intensity_sld.maximum/2;} var matrixemboss: - = [-intensity_sld.value, -intensity_sld.value, 0, 1, 0, -intensity_sld.value, intensity_sld.value, intensity_sld.value, intensity_sld waarde var.]; omschakeling: convolutionfilter = nieuwe convolutionfilter (3, 3, matrixemboss); photoeffected.filters = [de]; actieve filters = evt.target knopen; intensity_sld.enabled = waar;} functie brightness_btnhandler (EVT:MouseEvent): ongeldig {als actieve filters.= evt. Doelstellingen) {intensity_sld.maximum = 6; intensity_sld.snapinterval = (intensity_sld.maximum - intensity_sld. Minimum) /40; intensity_sld.value = intensity_sld.maximum/2;} var matrixbrightness: - = [0, 0, 0, 0, 0, 0, 0, 0 intensity_sld.value,]; var omschakeling: convolutionfilter = nieuwe convolutionfilter (3, 3 en matrixbrightness); photoeffected.filters = [de]; actieve filters = evt.target knopen; intensity_sld.enabled = waar;} functie negative_btnhandler (EVT: MouseEvent): ongeldig {VAR matrixnegative: kleur op matrix = nieuwe kleur op matrix ([1, 0, 0, 0255, 0, 1, 0, 0, 0 0255,, 1, 0255, 0, 0, 0, 1, 0); foto 's.Effected.filters = [matrixnegative]; actieve filters = evt.target knopen; intensity_sld.enabled = vals;}, noot: voor de "negatieve" filter, gebruik ik een kleur op de matrix van het gebruik van filters 4 X 5 matrix toepassing van kleur veranderen.De kleur van de reactie op de matrix over meer informatie, zie de flash artikel 20 stappen.,, laten we nu elke knop die overeenkomt met de functie, default_btn. AddEventListener (mouseevent.click, default_btnhandler, valse, 0, waar); blur_btn. AddEventListener (mouseevent.click, blur_btnhandler, valse, 0, waar); emboss_btn. AddEventListener (mouseevent.click, emboss_btnhandler, valse, 0, waar); brightness_btn. AddEventListener (mouseevent.click, brightness_btnhandler, valse, 0, waar); negative_btn. AddEventListener (mouseevent.click, negative_btnhandler, valse, 0, waar); maatregelen 21, de laatste code, ik heb gemaakt van drie extra functies, namelijk "applyconvolutionfilter", "activefilterandintensityonoff", en "setsliderproperDe relatie.Hun doel is om van de overlapping van de filters, afgerond en de code moeten vergelijkbaar zijn met die van de invoer van fl.events.sliderevent; de invoer van..., fl.managers.stylemanager; var formaat: tekst = de nieuwe tekst formaat ("Arial", 10, 0x000000); dit. SetStyle ("formaat" - formaat); var photowrapper: Sprite = de nieuwe Sprite (); photowrapper. X = photooriginal. X; photowrapper. Y = photooriginal. Y; var photoeffected:photodandelion = nieuwe photodandelion (); photowrapper. Addchild (photoeffected); addchild (photowrapper); var comparisonline: vorm = nieuwe vorm (); comparisonline. X = X + Y photooriginal. Photooriginal.width/2; comparisonline. = Y + photooriginal. Photooriginal.height; comparisonline. Grafiek lineaire (2.0x999999, 1, waar); comparisonline. Grafische. Op (0, 0); comparisonline. Figuur. Lineto (0, - photooriginal. Hoogte); addchild (comparisonline); mask_sld. X = photooriginal. X; mask_sld. Y = photooriginal. Y + photooriginal.height; mask_sld.minimum = 0; mask_sld.maximum = photooriginal.width; mask_sld.value = = = = = = = = = = = = photooriginal.width/2; mask_sld.width photooriginal.width; de functionele masksliderdrag (EVT:sliderevent): ongeldig {comparisonline. X = evt.target.value + evt. Doelstellingen. X; photomask.width = evt.target.value;} mask_sld. AddEventListener (sliderevent.thumb_drag, masksliderdrag); var masker: vorm = nieuwe vorm (); het masker van het licht. X = X, y = photooriginal photooriginal. Het masker van het licht.. Y; het masker van het licht. Beginfill (grafiek 0xff9900); foto 's.Omask. Figuur. DrawRect (0, 0, photooriginal.width, photooriginal. Hoogte); het masker van het licht. Figuur. Endfill (); addchild (masker); photowrapper.mask = het masker van het licht; photomask.width = mask_sld.value; var APF: knopen; de intensiteit van de functie veranderen (EVT:sliderevent): ongeldig {filter dispatchevent (nieuwe. Gebeurtenissen (MouseEvent. Klik));} intensity_sld. AddEventListener (sliderevent.thumb_drag, intensiteit); intensity_sld.enabled = valse; de functionele applyconvolutionfilter (matrix -): ongeldig {VAR cfilter:convolutionfilter = nieuwe convolutionfilter (3, 3, matrix); photoeffected.filters = [cfilter];} functie activefilterandintensityonoff (knop: knop, intensityonoff: Bull. (APF: nietigverklaring van intensity_sld.en = knopen;- waarde = intensityonoff;} functie setsliderproperties (knop: druk op de knop, het maximale aantal): ongeldig {als actieve filters.= = = = = = = Max {intensity_sld.maximum BTN); intensity_sld.snapinterval = (intensity_sld.maximum - intensity_sld. Minimum) /40; intensity_sld.value = intensity_sld.maximum/2;}} functie default_btnhandler (EVT:MouseEvent): ongeldig {VAR matrixdefault: - = [0, 0, 0, 0, 1, 0, 0, 0, 0 applyconvolutionfilter (matrixdefault)]; (evt.target; activefilterandintensityonoff knop, valse);} functie blur_btnhandler (EVT:MouseEvent): ongeldig {var de knop: knopen = evt.target knopen; setsliderproperties (BTn, 30); var blurx: hoeveelheid = intensity_sld.value; var bewijs: de hoeveelheid = intensity_sld.value; photoeffected.filters = [nieuwe waas (blurx, wazig, bitmapfilterquality. De hoge activefilterandintensity)];- (knop, waar);} functie emboss_btnhandler (EVT:MouseEvent): ongeldig {var de knop: knopen = evt.target knopen; setsliderproperties (BTn, 4); var matrixemboss: - = [-intensity_sld.value, -intensity_sld.value, 0, 1, 0, -intensity_sld.value, intensity_sld.value, intensity_sld.value, intensity_sld. Waarde]; applyconvolutionfilter (matrixemboss); activefilterandintensityonoff (BTn, waar);} functie brightness_btnhandler (EVT:MouseEvent): ongeldig {var de knop: knopen = evt.target knopen; setsliderproperties (BTn, 6); var matrixbrightness: - = [0, 0, 0, 0, 0, 0, 0, 0 intensity_sld.value,]; applyconvolutionfilter (matrixbrightness); activefilterandintensityonoff (De BTn, waar);}De functie van negative_btnhandler (EVT:MouseEvent): ongeldig {VAR matrixnegative: kleur op matrix = nieuwe kleur op matrix ([1, 0, 0, 0255, 0, 1, 0, 0255, 0, 0, 1, 0255, 0, 0, 0, 1, 0]); photoeffected.filters = [matrixnegative] (evt.target; activefilterandintensityonoff knop, valse);} default_btn. AddEventListener (mouseevent.click, default_btnhandler, valse, 0, waar); blur_btn. AddEventListener (mouseevent.click, blur_btnhandler, valse, 0, waar); emboss_btn. AddEventListener (mouseevent.click, emboss_btnhandler, valse, 0, waar); brightness_btn geregistreerd (mouseevent.click, brightness_btnhandler luisteraar. Valse, 0, waar); nEgative_btn. AddEventListener (mouseevent.click, negative_btnhandler, valse, 0, waar);: je zou zelfs kunnen overtreffen, de aandacht van de dingen die ik gedaan heb met inbegrip van alle filters functies zoals de tenuitvoerlegging van het centrum.Dan, als de andere als "of" omschakeling "voor de uitvoering van de overeenkomstige code nodig van de filters, conclusies, er zijn veel dingen die je kan doen - wil ik kort een korte inleiding.- de filter is goed, genoeg argumenten te spelen.Als je niet vindt wat je zoekt, en dan proberen een andere kleur van de filters. Op de matrix, convolutionfilter, zoals de DisplacementMapFilter, kun je voor je gevonden en verbaasd.De test, is het van het grootste belang, voor de lol.Bedankt voor je tijd, naar de les.Ik hoop dat je het nuttig vinden.
In vergelijking met de flash
Next Page:De richtsnoeren voor