패키지 | flash.filters |
클래스 | public final class DropShadowFilter |
상속 | DropShadowFilter BitmapFilter Object |
언어 버전: | ActionScript 3.0 |
런타임 버전: | AIR 1.0, Flash Player 9 |
필터 사용은 필터를 적용할 객체에 따라 달라집니다.
- 표시 객체에 필터를 적용하려면
filters
속성(DisplayObject로부터 상속)을 사용합니다. 객체의filters
속성을 설정해도 객체가 수정되지는 않으며,filters
속성을 지워야 필터를 제거할 수 있습니다. - BitmapData 객체에 필터를 적용하려면
BitmapData.applyFilter()
메서드를 사용합니다. BitmapData 객체에서applyFilter()
를 호출하면 소스 BitmapData 객체와 필터 객체가 사용되고 필터링된 이미지가 결과로 생성됩니다.
표시 객체에 필터를 적용하면 해당 표시 객체의 cacheAsBitmap
속성 값이 true
로 설정됩니다. 모든 필터를 지우면 cacheAsBitmap
의 원래 값이 복원됩니다.
이 필터에서는 스테이지의 크기를 조절할 수 있습니다. 그러나 전체 크기 조절, 회전 및 기울임은 지원하지 않습니다. 객체 자체의 크기가 조절된 경우(scaleX
및 scaleY
가 1.0 이외의 값으로 설정된 경우) 필터의 크기는 조절되지 않습니다. 스테이지에서 확대할 때만 크기가 조절됩니다.
결과 이미지가 최대 크기를 초과하는 경우 필터는 적용되지 않습니다. AIR 1.5 및 Flash Player 10에서는 최대값이 8,191픽셀(폭 또는 높이)이며 총 픽셀 수는 16,777,215픽셀을 초과할 수 없습니다. 따라서 이미지의 폭이 8,191픽셀이면 높이가 2,048픽셀 이하여야 합니다. Flash Player 9 이전 버전 및 AIR 1.1 이전 버전에서는 이 제한이 높이 2,880픽셀 및 폭 2,880픽셀입니다. 예를 들어 필터가 적용된 큰 동영상 클립을 확대하는 경우 결과 이미지가 최대 크기를 초과하면 필터가 해제됩니다.
관련 API 요소
flash.display.DisplayObject.filters
flash.display.DisplayObject.cacheAsBitmap
속성 | 정의 주체 | ||
---|---|---|---|
alpha : Number
그림자 색상의 알파 투명도 값입니다. | DropShadowFilter | ||
angle : Number
그림자 각도입니다. | DropShadowFilter | ||
blurX : Number
수평 흐림 효과의 정도를 나타냅니다. | DropShadowFilter | ||
blurY : Number
수직 흐림 효과의 정도를 나타냅니다. | DropShadowFilter | ||
color : uint
그림자 색상입니다. | DropShadowFilter | ||
constructor : Object
지정된 객체 인스턴스의 클래스 객체 또는 생성자 함수에 대한 참조입니다. | Object | ||
distance : Number
그림자의 오프셋 거리(픽셀 단위)입니다. | DropShadowFilter | ||
hideObject : Boolean
객체의 숨김 여부를 나타냅니다. | DropShadowFilter | ||
inner : Boolean
그림자가 내부 그림자인지 여부를 나타냅니다. | DropShadowFilter | ||
knockout : Boolean
효과적으로 객체를 투명하게 채우고 문서의 배경색을 나타낼 수 있는 녹아웃 효과를 적용(true)합니다. | DropShadowFilter | ||
quality : int
필터 적용 횟수입니다. | DropShadowFilter | ||
strength : Number
인쇄나 분사 강도를 나타냅니다. | DropShadowFilter |
메서드 | 정의 주체 | ||
---|---|---|---|
DropShadowFilter(distance:Number = 4.0, angle:Number = 45, color:uint = 0, alpha:Number = 1.0, blurX:Number = 4.0, blurY:Number = 4.0, strength:Number = 1.0, quality:int = 1, inner:Boolean = false, knockout:Boolean = false, hideObject:Boolean = false)
지정된 매개 변수로 새 DropShadowFilter 인스턴스를 만듭니다. | DropShadowFilter | ||
[재정의]
이 필터 객체의 복사본을 반환합니다. | DropShadowFilter | ||
지정된 속성이 객체에 정의되어 있는지 여부를 나타냅니다. | Object | ||
Object 클래스의 인스턴스가 매개 변수로 지정된 객체의 프로토타입 체인에 있는지 여부를 나타냅니다. | Object | ||
지정된 속성이 존재하고 열거 가능한지 여부를 나타냅니다. | Object | ||
루프 작업에서 동적 속성을 사용할 수 있는지 여부를 설정합니다. | Object | ||
로캘별 규칙에 따라 서식이 지정된 이 객체의 문자열 표현을 반환합니다. | Object | ||
지정된 객체의 문자열 표현을 반환합니다. | Object | ||
지정된 객체의 프리미티브 값을 반환합니다. | Object |
alpha | 속성 |
angle | 속성 |
blurX | 속성 |
blurY | 속성 |
color | 속성 |
distance | 속성 |
hideObject | 속성 |
inner | 속성 |
knockout | 속성 |
quality | 속성 |
quality:int
언어 버전: | ActionScript 3.0 |
런타임 버전: | AIR 1.0, Flash Player 9 |
필터 적용 횟수입니다. 기본값은 BitmapFilterQuality.LOW
로서 필터를 1회 적용하는 것과 동일합니다. 값 BitmapFilterQuality.MEDIUM
은 필터를 2회 적용하고 값 BitmapFilterQuality.HIGH
는 3회 적용합니다. 낮은 값을 가진 필터가 보다 빠르게 렌더링됩니다.
대부분의 응용 프로그램의 경우 품질 값을 낮음, 중간, 높음으로 설정하면 충분합니다. 15까지의 추가적인 숫자 값을 사용하여 다른 효과를 얻을 수 있으나 값이 높을수록 렌더링 속도가 느려집니다. quality
값을 올리는 대신 간단히 blurX
및 blurY
속성의 값을 올려도 보다 빠른 렌더링으로 유사한 효과를 얻을 수 있습니다.
구현
public function get quality():int
public function set quality(value:int):void
관련 API 요소
strength | 속성 |
DropShadowFilter | () | 생성자 |
public function DropShadowFilter(distance:Number = 4.0, angle:Number = 45, color:uint = 0, alpha:Number = 1.0, blurX:Number = 4.0, blurY:Number = 4.0, strength:Number = 1.0, quality:int = 1, inner:Boolean = false, knockout:Boolean = false, hideObject:Boolean = false)
언어 버전: | ActionScript 3.0 |
런타임 버전: | AIR 1.0, Flash Player 9 |
지정된 매개 변수로 새 DropShadowFilter 인스턴스를 만듭니다.
매개 변수distance:Number (default = 4.0 ) — 그림자의 오프셋 거리로, 단위는 픽셀입니다.
| |
angle:Number (default = 45 ) — 그림자의 각도로, 범위는 0 ~ 360도(부동 소수점)도입니다.
| |
color:uint (default = 0 ) — 그림자 색상으로, 16진수 형식인 0xRRGGBB로 표시됩니다. 기본값은 0x000000입니다.
| |
alpha:Number (default = 1.0 ) — 그림자 색상의 알파 투명도 값입니다. 유효한 값은 0.0부터 1.0까지입니다. 예를 들어 .25는 투명도 값을 25%로 설정합니다.
| |
blurX:Number (default = 4.0 ) — 수평 흐림 효과의 정도를 나타냅니다. 유효한 값은 0부터 255.0(부동 소수점)까지입니다.
| |
blurY:Number (default = 4.0 ) — 수직 흐림 효과의 정도를 나타내며 유효한 값은 0부터 255.0(부동 소수점)까지입니다.
| |
strength:Number (default = 1.0 ) — 인쇄나 분사 강도를 나타냅니다. 값이 클수록 더 많은 색상이 찍히고 그림자와 배경과의 대비가 더 강해집니다. 유효한 값은 0부터 255.0까지입니다.
| |
quality:int (default = 1 ) — 필터 적용 횟수입니다. 다음과 같은 BitmapFilterQuality 상수를 사용합니다.
이 값에 대한 자세한 내용은 | |
inner:Boolean (default = false ) — 그림자가 내부 그림자인지 여부를 나타냅니다. true 값은 내부 그림자를 지정합니다. false 값은 외부 그림자(객체의 외부 가장자리 주위의 그림자)를 지정합니다.
| |
knockout:Boolean (default = false ) — 효과적으로 객체를 투명하게 채우고 문서의 배경색을 나타낼 수 있는 녹아웃 효과(true )를 적용합니다.
| |
hideObject:Boolean (default = false ) — 객체의 숨김 여부를 나타냅니다. true 값은 객체 자체는 그려지지 않고 그림자만 표시됨을 나타냅니다.
|
관련 API 요소
clone | () | 메서드 |
override public function clone():BitmapFilter
언어 버전: | ActionScript 3.0 |
런타임 버전: | AIR 1.0, Flash Player 9 |
이 필터 객체의 복사본을 반환합니다.
반환값BitmapFilter — 원본 DropShadowFilter 인스턴스와 모든 속성이 같은 새 DropShadowFilter 인스턴스입니다.
|
- 필터를 적용할 사각형을 그리는 데 사용할 세 가지 속성을 선언합니다.
- 생성자 함수를 만듭니다. 생성자에서
draw()
메서드를 호출합니다. 이 메서드는 Sprite의graphics
속성을 통해 액세스되는 Graphics 클래스의 메서드를 사용하여 주황색 사각형을 그립니다. - 생성자에서 변수
filter
를 BitmapFilter 객체로 선언하고 이 객체를getBitmapFilter()
호출의 반환 값에 할당합니다.getBitmapFilter()
메서드는 사용되는 그림자 필터를 정의합니다. - 새 Array 객체
myFilters
를 만들고filter
를 배열에 추가합니다.myFilters
배열을 DropShadowFilterExample 객체의filters
속성에 할당합니다. 이것은myFilters
의 모든 필터에 적용되며, 이 경우에는filter
뿐입니다.
package { import flash.display.Sprite; import flash.events.Event; import flash.events.MouseEvent; import flash.filters.BitmapFilter; import flash.filters.BitmapFilterQuality; import flash.filters.DropShadowFilter; public class DropShadowFilterExample extends Sprite { private var bgColor:uint = 0xFFCC00; private var size:uint = 80; private var offset:uint = 50; public function DropShadowFilterExample() { draw(); var filter:BitmapFilter = getBitmapFilter(); var myFilters:Array = new Array(); myFilters.push(filter); filters = myFilters; } private function getBitmapFilter():BitmapFilter { var color:Number = 0x000000; var angle:Number = 45; var alpha:Number = 0.8; var blurX:Number = 8; var blurY:Number = 8; var distance:Number = 15; var strength:Number = 0.65; var inner:Boolean = false; var knockout:Boolean = false; var quality:Number = BitmapFilterQuality.HIGH; return new DropShadowFilter(distance, angle, color, alpha, blurX, blurY, strength, quality, inner, knockout); } private function draw():void { graphics.beginFill(bgColor); graphics.drawRect(offset, offset, size, size); graphics.endFill(); } } }
Tue Jun 12 2018, 03:17 PM Z