| 套件 | 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 像素。例如,當您在套用某個濾鏡的大型影片片段上進行放大顯示時,如果產生的影像超過最大尺寸,便會關閉該濾鏡。
相關 API 元素
flash.display.DisplayObject.filters
flash.display.DisplayObject.cacheAsBitmap
| 屬性 | 定義自 | ||
|---|---|---|---|
| alpha : Number
陰影顏色的 Alpha 透明度值。 | 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 (相當於套用一次濾鏡)。 BitmapFilterQuality.MEDIUM 值會套用兩次濾鏡,而 BitmapFilterQuality.HIGH 值會套用三次濾鏡。 設定值較低的濾鏡,其顯示速度較快。
對大部分應用程式而言,將 quality 值設定為低、中或高就足夠了。 雖然您可以使用其他數值 (最高可至 15) 來達成不同的效果,但越高的值就代表越緩慢的顯示速度。 只要增加 blurX 和 blurY 屬性的值,通常就可以得到類似的效果和較快的顯示速度,而不需要增加 quality 的值。
實作
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) — 陰影的顏色,以十六進位格式 0xRRGGBB 表示。 預設值為 0x000000。
| |
alpha:Number (default = 1.0) — 陰影顏色的 Alpha 透明度值。 有效值為 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()方法,使用 Graphics 類別的方法 (透過 Sprite 的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:47 PM Z
隱藏繼承公用屬性
顯示繼承公用屬性