Pacote | flash.filters |
Classe | public final class BlurFilter |
Herança | BlurFilter BitmapFilter Object |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9 |
quality
desse filtro for definida como baixa, o resultado será uma aparência levemente desfocada. Quando a propriedade quality
estiver definida como alta, ela se aproximará de um filtro de desfoque Gaussiano. É possível aplicar o filtro a qualquer objeto de exibição (isto é, objetos herdados da classe DisplayObject), como os objetos MovieClip, SimpleButton, TextField e Video, como também aos objetos BitmapData.
Para criar um novo filtro, use o construtor new BlurFilter()
. O uso dos filtros depende do objeto ao qual você vai aplicar o filtro:
- Para aplicar filtros em clipes de filme, campos de texto, botões e vídeo, use a propriedade
filters
(herdada do DisplayObject). Definir a propriedadefilters
de um objeto não modifica o objeto e você pode remover o filtro limpando a propriedadefilters
. - Para aplicar os filtros aos objetos BitmapData, use o método
BitmapData.applyFilter()
. A ação de chamar oapplyFilter()
em um objeto BitmapData usa o objeto BitmapData de origem e o objeto do filtro e cria uma imagem filtrada como resultado.
Se você aplicar um filtro a um objeto de exibição, a propriedade cacheAsBitmap
do objeto de exibição é definida como true
. Se você remover todos os filtros, o valor original de cacheAsBitmap
é restaurado.
Esse filtro suporta dimensionamento do Palco. Entretanto, ele não suporta dimensionamento geral, rotação e inclinação. Se o próprio objeto for dimensionado (se as propriedades scaleX
e scaleY
forem definidas para 100%), o efeito do filtro não será dimensionado. Ele será dimensionado somente quando o usuário aumentar o zoom no Palco.
Um filtro não é aplicado caso a imagem resultante exceda as dimensões máximas. No AIR 1.5 e no Flash Player 10, o máximo é de 8,191 pixels de largura ou de altura, e o número total de pixels não pode exceder 16,777,215 pixels. (Dessa forma, caso uma imagem tenha 8,191 pixels de largura, ela só pode ter 2.048 pixels de altura.) No Flash Player 9 e anteriores e no AIR 1.1 e anteriores, a limitação é de 2.880 pixels de altura e de 2.880 pixels de largura. Por exemplo, se você aumentar o zoom em um clipe de filme grande com um filtro aplicado, o filtro será desativado se a imagem resultante exceder as dimensões máximas.
Elementos da API relacionados
flash.display.DisplayObject.cacheAsBitmap
flash.display.BitmapData.applyFilter()
Propriedade | Definido por | ||
---|---|---|---|
blurX : Number
Intensidade de desfoque horizontal. | BlurFilter | ||
blurY : Number
Intensidade do desfoque vertical. | BlurFilter | ||
constructor : Object
Uma referência ao objeto de classe ou à função de construtor de uma determinada ocorrência de objeto. | Object | ||
quality : int
Número de vezes para realizar o desfoque. | BlurFilter |
Método | Definido por | ||
---|---|---|---|
Inicializa o filtro com os parâmetros especificados. | BlurFilter | ||
[substituir]
Retorna uma cópia deste objeto de filtro. | BlurFilter | ||
Indica se um objeto tem uma propriedade especificada definida. | Object | ||
Indica se uma ocorrência da classe Object está na cadeia de protótipos do objeto especificado como o parâmetro. | Object | ||
Indica se a propriedade especificada existe e é enumerável. | Object | ||
Define a disponibilidade de uma propriedade dinâmica para operações de repetição. | Object | ||
Retorna a representação da string deste objeto, formatado segundo as convenções específicas para a localidade. | Object | ||
Retorna a representação de string do objeto especificado. | Object | ||
Retorna o valor primitivo do objeto especificado. | Object |
blurX | propriedade |
blurX:Number
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9 |
Intensidade de desfoque horizontal. Os valores válidos são de 0 a 255 (ponto flutuante). O valor padrão é 4. Os valores que são uma potência de 2 (como 2, 4, 8, 16 e 32) são otimizados para renderizar mais rapidamente do que outros valores.
Implementação
public function get blurX():Number
public function set blurX(value:Number):void
blurY | propriedade |
blurY:Number
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9 |
Intensidade do desfoque vertical. Os valores válidos são de 0 a 255 (ponto flutuante). O valor padrão é 4. Os valores que são uma potência de 2 (como 2, 4, 8, 16 e 32) são otimizados para renderizar mais rapidamente do que outros valores.
Implementação
public function get blurY():Number
public function set blurY(value:Number):void
quality | propriedade |
quality:int
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9 |
Número de vezes para realizar o desfoque. O valor padrão é BitmapFilterQuality.LOW
, que é equivalente a aplicar o filtro uma vez. O valor BitmapFilterQuality.MEDIUM
aplica o filtro duas vezes; o valor BitmapFilterQuality.HIGH
aplica três vezes e se aproxima de um desfoque Gaussiano. Os filtros com valores menores são renderizados mais rapidamente.
Para a maioria dos aplicativos, um valor de quality
baixo, médio ou alto é suficiente. Embora seja possível usar valores numéricos adicionais até 15 para aumentar o número de vezes que o desfoque é aplicado, os valores mais altos são renderizados mais lentamente. Em vez de aumentar o valor de quality
, você pode normalmente obter um efeito similar, com uma renderização mais rápida, simplesmente aumentando os valores das propriedades blurX
e blurY
.
Você pode usar as seguintes constantes BitmapFilterQuality a seguir para especificar os valores da propriedade quality
:
BitmapFilterQuality.LOW
BitmapFilterQuality.MEDIUM
BitmapFilterQuality.HIGH
Implementação
public function get quality():int
public function set quality(value:int):void
BlurFilter | () | Construtor |
public function BlurFilter(blurX:Number = 4.0, blurY:Number = 4.0, quality:int = 1)
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9 |
Inicializa o filtro com os parâmetros especificados. Os valores padrão criam uma imagem suave, desfocada.
ParâmetrosblurX:Number (default = 4.0 ) — Intensidade de desfoque horizontal. Os valores válidos são de 0 a 255,0 (valor de ponto flutuante).
| |
blurY:Number (default = 4.0 ) — Intensidade de desfoque vertical. Os valores válidos são de 0 a 255,0 (valor de ponto flutuante).
| |
quality:int (default = 1 ) — Número de vezes para aplicar o filtro. Você pode especificar a qualidade usando as constantes BitmapFilterQuality:
Alta qualidade se aproxima de um desfoque Gaussiano. Para a maioria dos aplicativos, esses três valores são suficientes. Embora você possa usar valores numéricos adicionais até 15 para obter efeitos diferentes, fique atento porque os valores mais altos são renderizados mais lentamente. |
clone | () | método |
override public function clone():BitmapFilter
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9 |
Retorna uma cópia deste objeto de filtro.
RetornaBitmapFilter — Nova ocorrência BlurFilter com todas as mesmas propriedades que a ocorrência BlurFilter original.
|
- Importe as classes necessárias.
- Declare três propriedades usadas na função
draw()
, que desenha o objeto no qual o filtro de desfoque é aplicado. - Crie a função de construtor
BlurFilterExample()
, que faz o seguinte:- Chama a função
draw()
, que é declarada posteriormente. - Declara uma variável
filter
como um objeto BitmapFilter e o atribui para o retorno de uma chamada paragetBitmapFilter()
. - Cria um novo objeto Matriz
myFilters
e adicionafilter
à matriz e atribuimyFilters
à propriedadefilters
do objeto BlurFilterExample. Isso aplica todos os filtros encontrados emmyFilters
, o que, nesse caso, é somentefilter
.
- Chama a função
- Crie a função
getBitmapFilter()
para criar e definir as propriedades do filtro. - Crie a função
draw()
. Essa função usa métodos da classe Graphics, acessados por meio da propriedadegraphics
da classe Sprite para desenhar o quadrado.
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(); } } }
Wed Jun 13 2018, 11:10 AM Z