Pacchetto | flash.filters |
Classe | public final class BlurFilter |
Ereditarietà | BlurFilter BitmapFilter Object |
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9 |
quality
di questo filtro è impostata su un valore basso, il risultato è un effetto leggermente sfuocato. Quando è impostata su un valore alto, la proprietà quality
si avvicina a un filtro di sfocatura gaussiana. Il filtro può essere applicato a qualunque oggetto di visualizzazione (cioè agli oggetti che ereditano dalla classe DisplayObject) quali MovieClip, SimpleButton, TextField e Video, nonché agli oggetti BitmapData.
Per creare un nuovo filtro, utilizzate la funzione di costruzione new BlurFilter()
. L'uso dei filtri dipende dall'oggetto a cui il filtro viene applicato:
- per applicare i filtri a clip filmato, campi di testo, pulsanti e video, utilizzate la proprietà
filters
(ereditata da DisplayObject). L'impostazione della proprietàfilters
di un oggetto non modifica l'oggetto ed è possibile eliminare il filtro cancellando la proprietàfilters
. - Per applicare filtri a oggetti BitmapData, utilizzate il metodo
BitmapData.applyFilter()
. Quando si chiamaapplyFilter()
su un oggetto BitmapData, vengono acquisiti l'oggetto BitmapData di origine e l'oggetto filtro e viene generata un'immagine filtrata come risultato.
Se applicate un filtro a un oggetto di visualizzazione, la proprietà cacheAsBitmap
dell'oggetto viene impostata su true
. Se eliminate tutti i filtri, viene ripristinato il valore originale di cacheAsBitmap
.
Questo filtro supporta la modifica in scala sullo stage, ma non supporta operazioni generiche di modifica in scala, rotazione e inclinazione. Se l'oggetto stesso viene modificato in scala (se scaleX
e scaleY
non sono impostati sul 100%), l'effetto del filtro non viene modificato in scala. La modifica in scala avviene solo quando si ingrandisce lo stage.
Un filtro non viene applicato se l'immagine risultante supera le dimensioni massime. In AIR 1.5 e Flash Player 10, la dimensione massima è di 8.191 pixel in larghezza o altezza, mentre il numero totale di pixel non può essere superiore a 16.777.215, pertanto se un'immagine ha una larghezza di 8.191 pixel, può avere solo una lunghezza di 2.048 pixel. In Flash Player 9 e versioni precedenti e in AIR 1.1 e versioni precedenti, la limitazione è di 2.880 pixel in altezza e 2.880 pixel in larghezza. Se, ad esempio, ingrandite un clip filmato di grandi dimensioni quando il filtro è applicato, il filtro viene disattivato se l'immagine risultante supera le dimensioni massime.
Elementi API correlati
flash.display.DisplayObject.cacheAsBitmap
flash.display.BitmapData.applyFilter()
Proprietà | Definito da | ||
---|---|---|---|
blurX : Number
La quantità di sfocatura orizzontale. | BlurFilter | ||
blurY : Number
La quantità di sfocatura verticale. | BlurFilter | ||
constructor : Object
Un riferimento all'oggetto classe o alla funzione di costruzione per una determinata istanza di oggetto. | Object | ||
quality : int
Il numero di operazioni di sfocatura da eseguire. | BlurFilter |
Metodo | Definito da | ||
---|---|---|---|
Inizializza il filtro con i parametri specificati. | BlurFilter | ||
[override]
Restituisce una copia di questo oggetto filtro. | BlurFilter | ||
Indica se per un oggetto è definita una proprietà specifica. | Object | ||
Indica se un'istanza della classe Object si trova nella catena di prototipi dell'oggetto specificato come parametro. | Object | ||
Indica se la proprietà specificata esiste ed è enumerabile. | Object | ||
Imposta la disponibilità di una proprietà dinamica per le operazioni cicliche. | Object | ||
Restituisce la rappresentazione in formato stringa di questo oggetto, formattato in base alle convenzioni specifiche per le versioni localizzate. | Object | ||
Restituisce la rappresentazione in formato stringa dell'oggetto specificato. | Object | ||
Restituisce il valore di base dell'oggetto specificato. | Object |
blurX | proprietà |
blurX:Number
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9 |
La quantità di sfocatura orizzontale. I valori validi sono compresi tra 0 e 255 (virgola mobile). Il valore predefinito è 4. I valori che sono potenze di 2 (come 2, 4, 8, 16 e 32) vengono ottimizzati per eseguire il rendering più rapidamente di altri valori.
Implementazione
public function get blurX():Number
public function set blurX(value:Number):void
blurY | proprietà |
blurY:Number
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9 |
La quantità di sfocatura verticale. I valori validi sono compresi tra 0 e 255 (virgola mobile). Il valore predefinito è 4. I valori che sono potenze di 2 (come 2, 4, 8, 16 e 32) vengono ottimizzati per eseguire il rendering più rapidamente di altri valori.
Implementazione
public function get blurY():Number
public function set blurY(value:Number):void
quality | proprietà |
quality:int
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9 |
Il numero di operazioni di sfocatura da eseguire. Il valore predefinito è BitmapFilterQuality.LOW
, che equivale ad applicare il filtro una volta. Il valore BitmapFilterQuality.MEDIUM
applica il filtro due volte; il valore BitmapFilterQuality.HIGH
lo applica tre volte e si avvicina a una sfocatura gaussiana. Il rendering dei filtri con valori bassi avviene più rapidamente.
Per la maggior parte delle applicazioni è sufficiente un valore quality
basso, medio o alto. Benché sia possibile utilizzare valori numerici aggiuntivi fino a 15 per aumentare il numero di applicazioni della sfocatura, il rendering dei valori elevati avviene più lentamente. Anziché aumentare il valore di quality
, spesso è possibile ottenere un effetto simile (e con un rendering più veloce) semplicemente incrementando i valori delle proprietà blurX
e blurY
.
Per specificare i valori della proprietà quality
è possibile utilizzare le seguenti costanti di BitmapFilterQuality:
BitmapFilterQuality.LOW
BitmapFilterQuality.MEDIUM
BitmapFilterQuality.HIGH
Implementazione
public function get quality():int
public function set quality(value:int):void
BlurFilter | () | Funzione di costruzione |
public function BlurFilter(blurX:Number = 4.0, blurY:Number = 4.0, quality:int = 1)
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9 |
Inizializza il filtro con i parametri specificati. I valori predefiniti creano un'immagine morbida e sfuocata.
ParametriblurX:Number (default = 4.0 ) — La quantità di sfocatura orizzontale da applicare. I valori validi sono compresi tra 0 e 255,0 (valore a virgola mobile).
| |
blurY:Number (default = 4.0 ) — La quantità di sfocatura verticale da applicare. I valori validi sono compresi tra 0 e 255,0 (valore a virgola mobile).
| |
quality:int (default = 1 ) — Il numero di applicazioni del filtro. È possibile specificare la qualità mediante le costanti di BitmapFilterQuality:
Una qualità alta si avvicina a una sfocatura gaussiana. Per la maggior parte delle applicazioni questi tre valori sono sufficienti. Benché sia possibile utilizzare valori numerici aggiuntivi fino a 15 per ottenere effetti diversi, tenere presente che il rendering dei valori elevati avviene più lentamente. |
clone | () | metodo |
override public function clone():BitmapFilter
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9 |
Restituisce una copia di questo oggetto filtro.
RestituisceBitmapFilter — Una nuova istanza BlurFilter con tutte le proprietà dell'istanza originale.
|
- Importare le classi richieste.
- Dichiarate tre proprietà utilizzate nella funzione
draw()
, che disegna l'oggetto a cui viene applicato il filtro di sfocatura. - Create la funzione di costruzione
BlurFilterExample()
, che esegue le seguenti operazioni:- Chiama la funzione
draw()
, che viene dichiarata successivamente. - Dichiara la variabile
filter
come oggetto BitmapFilter e la assegna al valore restituito di una chiamata agetBitmapFilter()
. - Crea un nuovo oggetto Array
myFilters
e aggiungefilter
all'array, quindi assegnamyFilters
alla proprietàfilters
dell'oggetto BlurFilterExample. In questo modo vengono applicati tutti i filtri presenti inmyFilters
; in questo caso solofilter
.
- Chiama la funzione
- Create la funzione
getBitmapFilter()
per creare e impostare le proprietà per il filtro. - Create la funzione
draw()
. Questa funzione utilizza i metodi della classe Graphics, a cui si accede tramite la proprietàgraphics
della classe Sprite, per disegnare il quadrato.
package { import flash.display.Sprite; import flash.filters.BitmapFilter; import flash.filters.BitmapFilterQuality; import flash.filters.BlurFilter; public class BlurFilterExample extends Sprite { private var bgColor:uint = 0xFFCC00; private var size:uint = 80; private var offset:uint = 50; public function BlurFilterExample() { draw(); var filter:BitmapFilter = getBitmapFilter(); var myFilters:Array = new Array(); myFilters.push(filter); filters = myFilters; } private function getBitmapFilter():BitmapFilter { var blurX:Number = 30; var blurY:Number = 30; return new BlurFilter(blurX, blurY, BitmapFilterQuality.HIGH); } private function draw():void { graphics.beginFill(bgColor); graphics.drawRect(offset, offset, size, size); graphics.endFill(); } } }
Tue Jun 12 2018, 02:44 PM Z