Paket | flash.display |
Sınıf | public class Bitmap |
Miras Alma | Bitmap DisplayObject EventDispatcher Object |
Alt Sınıflar | FlexBitmap |
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Bitmap()
yapıcısıyla oluşturduğunuz görüntüler de olabilir.
Bitmap()
yapıcısı, BitmapData nesnesi başvurusu içeren bir Bitmap nesnesi oluşturmanızı sağlar. Bir Bitmap nesnesi oluşturduktan sonra, bitmap'i görüntüleme listesine yerleştirmek için üst DisplayObjectContainer örneğinin addChild()
veya addChildAt()
yöntemini kullanın.
Bir Bitmap nesnesi, translation veya rotation özelliklerinden bağımsız olarak BitmapData başvurusunu birçok Bitmap nesnesi arasında paylaşabilir. Aynı BitmapData nesnesine başvuran birden çok Bitmap nesnesi oluşturabileceğinizden, birden çok görüntüleme nesnesi, her görüntüleme nesnesi örneği için bir BitmapData nesnesi bellek yükü oluşturmadan aynı karmaşık BitmapData nesnesini kullanabilir.
BitmapData nesnesi, bir Bitmap nesnesi tarafından şu iki yoldan biriyle ekrana çizilebilir: dolgu bitmap şekli olarak vektör oluşturucu kullanılarak veya daha hızlı bir piksel kopyalama yordamı kullanılarak. Piksel kopyalama yordamı, vektör oluşturucudan çok daha hızlıdır ancak Bitmap nesnesinin bunu kullanması için belirli koşulları karşılaması gerekir:
- Bitmap nesnesine uzatma, döndürme veya eğim uygulanamaz.
- Bitmap nesnesine renk dönüştürme uygulanamaz.
- Bitmap nesnesine karışım modu uygulanamaz.
- Maske katmanları veya
setMask()
yöntemleri üzerinden kırpma gerçekleştirilemez. - Görüntü bir maske olamaz.
- Hedef koordinatların bütün piksel sınırında olması gerekir.
Görüntüyü yüklemek için kullanılan Loader nesnesinin etki alanı dışında bir etki alanından bir Bitmap nesnesi yüklerseniz ve Loader nesnesinin etki alanına erişilmesine izin veren bir URL ilke dosyası yoksa, bu durumda o etki alanındaki bir komut dosyası, Bitmap nesnesine veya bu nesnenin özelliklerine ve yöntemlerine erişemez. Daha fazla bilgi için, bkz. Flash Player Geliştirici Merkezi Konusu: Güvenlik.
Not: Bitmap sınıfı, InteractiveObject sınıfının alt sınıfı değildir, bu nedenle mouse olayları gönderemez. Ancak, Bitmap nesnesini içeren görüntüleme nesnesi kabının addEventListener()
yöntemini kullanabilirsiniz.
İlgili API Öğeleri
Özellik | Tanımlayan: | ||
---|---|---|---|
accessibilityProperties : AccessibilityProperties
Bu görüntüleme nesnesi için geçerli erişilebilirlik seçenekleri. | DisplayObject | ||
alpha : Number
Belirtilen nesnenin alfa saydamlık değerini gösterir. | DisplayObject | ||
bitmapData : BitmapData
Başvurulan BitmapData nesnesi. | Bitmap | ||
blendMode : String
Hangi karışım modunun kullanılacağını belirten bir BlendMode sınıfı değeri. | DisplayObject | ||
blendShader : Shader [salt yazılır]
Ön planı ve arka planı karıştırmak için kullanılacak bir gölgelendirici ayarlar. | DisplayObject | ||
cacheAsBitmap : Boolean
true olarak ayarlanırsa, Flash çalışma zamanları, görüntüleme nesnesinin dahili bir bitmap temsilini önbelleğe alır. | DisplayObject | ||
cacheAsBitmapMatrix : Matrix
Bu Matrix nesnesi null olmazsa, görüntüleme nesnesinin cacheAsBitmap true olarak ayarlandığı zaman nasıl oluşturacağını tanımlar. | DisplayObject | ||
constructor : Object
Belirli bir nesne örneği için sınıf nesnesine veya yapıcı işlevine bir başvuru. | Object | ||
filters : Array
Geçerli olarak görüntüleme nesnesiyle ilişkilendirilmiş her filtre nesnesini içeren dizinli bir dizi. | DisplayObject | ||
height : Number
Görüntüleme nesnesinin yüksekliğini, piksel cinsinden belirtir. | DisplayObject | ||
loaderInfo : LoaderInfo [salt okunur]
Bu görüntüleme nesnesinin ait olduğu dosyayı yükleme hakkında bilgi içeren bir LoaderInfo nesnesi döndürür. | DisplayObject | ||
mask : DisplayObject
Çağıran görüntüleme nesnesi belirtilen mask nesnesiyle maskelenir. | DisplayObject | ||
metaData : Object
Meta veri SWF dosyasında PlaceObject4 aracılığıyla söz konusu DisplayObject örneğinin yanında depolanmışsa, DisplayObject örneğinin meta veri nesnesini alır. | DisplayObject | ||
mouseX : Number [salt okunur]
Farenin veya kullanıcı girdi aygıtı konumunun x koordinatını piksel olarak belirtir. | DisplayObject | ||
mouseY : Number [salt okunur]
Farenin veya kullanıcı girdi aygıtı konumunun y koordinatını piksel olarak belirtir. | DisplayObject | ||
name : String
DisplayObject öğesinin örnek adını belirtir. | DisplayObject | ||
opaqueBackground : Object
Görüntüleme nesnesinin belirli bir arka plan rengiyle opak olup olmadığını belirtir. | DisplayObject | ||
parent : DisplayObjectContainer [salt okunur]
Bu görüntüleme nesnesini içeren DisplayObjectContainer nesnesini belirtir. | DisplayObject | ||
pixelSnapping : String
Bitmap nesnesinin en yakın piksele bitiştirilip bitiştirilmediğini denetler. | Bitmap | ||
root : DisplayObject [salt okunur]
Yüklü bir SWF dosyasındaki bir görüntüleme nesnesi için root özelliği, görüntüleme listesi ağaç yapısının o SWF dosyası tarafından temsil edilen kısmındaki en üst görüntüleme nesnesidir. | DisplayObject | ||
rotation : Number
DisplayObject örneğinin başlangıç yönlendirmesinden itibaren döndürülmesini derece olarak belirtir. | DisplayObject | ||
rotationX : Number
DisplayObject örneğinin, 3B üst kabına göre başlangıç yönlendirmesinden itibaren x ekseninde döndürülmesini derece olarak belirtir. | DisplayObject | ||
rotationY : Number
DisplayObject örneğinin, 3B üst kabına göre başlangıç yönlendirmesinden itibaren y ekseninde döndürülmesini derece olarak belirtir. | DisplayObject | ||
rotationZ : Number
DisplayObject örneğinin, 3B üst kabına göre başlangıç yönlendirmesinden itibaren z ekseninde döndürülmesini derece olarak belirtir. | DisplayObject | ||
scale9Grid : Rectangle
Etkin durumdaki geçerli ölçekleme ızgarası. | DisplayObject | ||
scaleX : Number
Nesnenin, kayıt noktasından itibaren uygulandığı haliyle yatay ölçeğini (percentage) belirtir. | DisplayObject | ||
scaleY : Number
Nesnenin kayıt noktasından itibaren uygulandığı haliyle nesnenin dikey ölçeğini (percentage) belirtir. | DisplayObject | ||
scaleZ : Number
Nesnenin kayıt noktasından itibaren uygulandığı haliyle nesnenin derinlik ölçeğini (percentage) belirtir. | DisplayObject | ||
scrollRect : Rectangle
Görüntüleme nesnesinin kaydırma dikdörtgeni sınırları. | DisplayObject | ||
smoothing : Boolean
Bitmap öğesinin ölçeklendiğinde düzgünleştirilip düzgünleştirilmediğini denetler. | Bitmap | ||
stage : Stage [salt okunur]
Görüntüleme nesnesinin Sahne Alanı. | DisplayObject | ||
transform : flash.geom:Transform
Bir görüntüleme nesnesinin matrisi, renk dönüşümü ve piksel sınırları ile ilgili özellikleri olan bir nesne. | DisplayObject | ||
visible : Boolean
Görüntüleme nesnesinin görünür olup olmadığı. | DisplayObject | ||
width : Number
Görüntüleme nesnesinin genişliğini, piksel cinsinden belirtir. | DisplayObject | ||
x : Number
DisplayObject örneğinin DisplayObjectContainer üst öğesinin yerel koordinatlarına göre x koordinatını belirtir. | DisplayObject | ||
y : Number
DisplayObject örneğinin DisplayObjectContainer üst öğesinin yerel koordinatlarına göre y koordinatını belirtir. | DisplayObject | ||
z : Number
3B üst kabına göre DisplayObject örneğinin z ekseni boyunca z koordinatı konumunu belirtir. | DisplayObject |
Yöntem | Tanımlayan: | ||
---|---|---|---|
Bir Bitmap nesnesini, belirtilen BitmapData nesnesine başvurması için başlatır. | Bitmap | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
EventDispatcher nesnesi olan bir olay dinleyici nesnesini, dinleyicinin bir olayın bildirimini alması için kaydeder. | EventDispatcher | ||
Olay akışına bir olay gönderir. | EventDispatcher | ||
Görüntüleme nesnesinin alanını targetCoordinateSpace nesnesinin koordinat sistemine göre tanımlayan bir dikdörtgen döndürür. | DisplayObject | ||
targetCoordinateSpace parametresince tanımlanan koordinat sistemini esas alarak ve her tür çizgi ve şekli dışarıda bırakarak görüntüleme nesnesinin sınırlarını tanımlayan bir dikdörtgen döndürür. | DisplayObject | ||
point nesnesini, Sahne Alanı (global) koordinatlarından görüntüleme nesnesinin (yerel) koordinatlarına dönüştürür. | DisplayObject | ||
Sahne Alanı (global) koordinatlarından iki boyutlu noktayı üç boyutlu görüntüleme nesnesinin (yerel) koordinatlarına dönüştürür. | DisplayObject | ||
EventDispatcher nesnesinin belirli bir olay türü için kayıtlı dinleyicisi olup olmadığını kontrol eder. | EventDispatcher | ||
Bir nesnenin belirli bir özelliğinin tanımlı olup olmadığını gösterir. | Object | ||
obj görüntüleme nesnesinin sınırlayıcı kutusuyla örtüşüp örtüşmediğini veya kesişip kesişmediğini görmek için görüntüleme nesnesinin sınırlayıcı kutusunu değerlendirir. | DisplayObject | ||
Görüntüleme nesnesinin x ve y parametreleriyle belirtilen noktayla örtüştüğünü veya kesiştiğini görmek için görüntüleme nesnesini değerlendirir. | DisplayObject | ||
Object sınıfının bir örneğinin parametre olarak belirtilen nesnenin prototip zincirinde olup olmadığını gösterir. | Object | ||
Üç boyutlu görüntüleme nesnesinin (yerel) koordinatlarının üç boyutlu noktasını, Sahne Alanı (global) koordinatlarındaki iki boyutlu noktaya dönüştürür. | DisplayObject | ||
point nesnesini, görüntüleme nesnesinin (yerel) koordinatlarından Sahne Alanı (global) koordinatlarına dönüştürür. | DisplayObject | ||
Belirtilen özelliğin bulunup bulunmadığını ve numaralandırılabilir olup olmadığını gösterir. | Object | ||
EventDispatcher nesnesinden bir dinleyiciyi kaldırır. | EventDispatcher | ||
Dinamik bir özelliğin döngü işlemlerinde kullanılabilirliğini ayarlar. | Object | ||
Bu nesnenin, yerel ayara özel kurallara göre biçimlendirilmiş dize temsilini döndürür. | Object | ||
Belirtilen nesnenin dize olarak temsil edilen halini döndürür. | Object | ||
Belirtilen nesnenin temel değerini döndürür. | Object | ||
Bir olay dinleyicisinin bu EventDispatcher nesnesiyle mi, yoksa onun belirtilen olay türüne yönelik üst öğelerinden biriyle mi kayıtlı olduğunu kontrol eder. | EventDispatcher |
bitmapData | özellik |
bitmapData:BitmapData
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Başvurulan BitmapData nesnesi.
Uygulama
public function get bitmapData():BitmapData
public function set bitmapData(value:BitmapData):void
pixelSnapping | özellik |
pixelSnapping:String
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Bitmap nesnesinin en yakın piksele bitiştirilip bitiştirilmediğini denetler. PixelSnapping sınıfı, şu olası değerleri içerir:
PixelSnapping.NEVER
—Piksel bitiştirme oluşmaz.PixelSnapping.ALWAYS
—Dönüştürmeden bağımsız olarak görüntü her zaman en yakın piksele bitiştirilir.PixelSnapping.AUTO
—Görüntü, döndürme veya eğim olmadan çizilirse ve %99,9 ile %100,1 ölçek faktöründe çizilirse, en yakın piksele bitiştirilir. Bu koşullar karşılanırsa, bitmap görüntüsü en yakın piksele bitiştirilerek %100 ölçekte çizilir. Dahili olarak bu değer, vektör oluşturucu kullanılarak olabilecek en hızlı şekilde görüntünün çizilmesini sağlar.
Uygulama
public function get pixelSnapping():String
public function set pixelSnapping(value:String):void
smoothing | özellik |
smoothing:Boolean
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Bitmap ölçeklendirildiğinde düzgünleştiriliyor mu, kontrol eder. true
olursa, ölçeklendiğinde bitmap düzgünleştirilir. false
olursa, ölçeklendiğinde bitmap düzgünleştirilmez.
Uygulama
public function get smoothing():Boolean
public function set smoothing(value:Boolean):void
Bitmap | () | Yapıcı |
public function Bitmap(bitmapData:BitmapData = null, pixelSnapping:String = "auto", smoothing:Boolean = false)
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Bir Bitmap nesnesini, belirtilen BitmapData nesnesine başvurması için başlatır.
ParametrelerbitmapData:BitmapData (default = null ) — Başvurulan BitmapData nesnesi.
| |||
pixelSnapping:String (default = "auto ") — Bitmap nesnesinin en yakın piksele bitiştirilip bitiştirilmediği.
| |||
smoothing:Boolean (default = false ) — Bitmap öğesinin ölçeklendiğinde düzgünleştirilip düzgünleştirilmediği. Örneğin, şu örnekler, smoothing öğesi false (sol) değerine ve true (sağ) değerine ayarlanmış şekilde 3 faktörüyle ölçeklenmiş aynı bitmap'i gösterir:
|
Örnek ( Bu örnek nasıl kullanılır? )
const IMAGE_URL:String = "http://www.helpexamples.com/flash/images/logo.png"; var ldr:Loader = new Loader(); ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, ldr_complete); ldr.load(new URLRequest(IMAGE_URL)); var bitmap1:Bitmap; var bitmap2:Bitmap; var bitmap3:Bitmap; var bitmap4:Bitmap; function ldr_complete(evt:Event):void { var bmp:Bitmap = ldr.content as Bitmap; bitmap1 = new Bitmap(bmp.bitmapData); bitmap1.x = 100; bitmap1.y = 100; bitmap1.rotation = 0; addChild(bitmap1); bitmap2 = new Bitmap(bmp.bitmapData); bitmap2.x = 200; bitmap2.y = 100; bitmap2.rotation = 90; addChild(bitmap2); bitmap3 = new Bitmap(bmp.bitmapData); bitmap3.x = 300; bitmap3.y = 100; bitmap3.rotation = 180; addChild(bitmap3); bitmap4 = new Bitmap(bmp.bitmapData); bitmap4.x = 400; bitmap4.y = 100; bitmap4.rotation = 270; addChild(bitmap4); }
threshold()
yönteminin kullanıldığı bir testi geçer. Bu görev, şu adımlar uygulanarak gerçekleştirilir:
- Bir
url
özelliği oluşturulur; bu, görüntü dosyasının konumu ve adıdır. - Sınıf yapıcısı,
configureAssets()
yöntemini çağırır; bu çağrı sonucunda dacompleteHandler()
yöntemi çağrılır. configureAssets()
öğesi, bir Loader nesnesi oluşturur; bu nesne de,completeHandler()
görüntü işlemeyi tamamladığında gönderilen bir olay dinleyicisini başlatır.- Daha sonra,
buildChild()
yöntemi, dosya adı ve konumunun bilinmesi içinurl
iletilmiş şekilde yeni bir URLRequest nesnesi (request
) oluşturur. request
nesnesi, bir görüntüleme nesnesi kullanarak görüntüyü belleğe yükleyenloader.load()
yöntemine iletilir.- Daha sonra görüntü, ekranda x = 0, y = 0 koordinatlarında hemen görüntüyü gösteren görüntüleme listesine yerleştirilir.
completeHandler()
yöntemi daha sonra şu görevleri gerçekleştirir:- Loader nesnesiyle başlatılan bir Bitmap nesnesiyle birlikte ikinci bir Loader nesnesi oluşturur.
- Orijinal görüntünün kopyasını oluşturan
duplicateImage()
yöntemini çağıran ikinci bir Bitmap nesnesi (duplicate
) oluşturur. duplicate
nesnesinin BitmapData nesnesine atanan bir BitmapData nesnesi oluşturur.- Orijinal görüntüyle aynı koordinatlar, genişlik ve yükseklikle başlatılan yeni bir Rectangle nesnesi oluşturur.
- x = 0, y = 0 varsayılan ayarlı yeni bir Point nesnesi oluşturur.
- Şu değişkenleri oluşturur:
operation
: eşik değeri >= orijinal olduğunda yeni rengi uygular.threshold
: her pikselin karşılaştırıldığı değer, 0xCC alfasıyla açık griye ayarlanır.color
: piksellerin eşik testini geçmek için ayarlandığı renk, bu durumda düz sarıdır.mask
: rengin tam karşıtına ayarlanır, (saydam mavi).copySource
: false değerine ayarlanır ve eşik değerinin geçmemesi durumunda piksel değerlerinin kopyalanmadığını belirtir. Görüntü çoğaltıldığı ve yalnızca eşik testini geçen pikseller değiştirildiği için bu değerin bir anlamı yoktur.
- Önceki değişkenleri kullanarak
threshold()
yöntemini çağırır. Sonuçta elde edilen eşik denklemi şu şekildedir:(geçerli piksel Değeri & 0x000000FF) >= (0xCCCCCCCC & 0x000000FF) olursa, piksel 0xFFFFFF00 olarak ayarlanır
.
Notlar:
- SWF dosyasını “Yerel oynatma güvenliği“ ayarı “Yalnızca yerel dosyalara erişim“ şeklinde ayarlanmış biçimde derlemeniz gerekir.
- Bu örnek, Image.gif adlı bir dosyanın SWF dosyanızla aynı dizine yerleştirilmesini gerektirir.
- En fazla 80 piksel genişlikte bir görüntü kullanmanız önerilir.
package { import flash.display.Bitmap; import flash.display.BitmapData; import flash.display.Loader; import flash.display.Sprite; import flash.events.*; import flash.geom.Point; import flash.geom.Rectangle; import flash.net.URLRequest; public class BitmapExample extends Sprite { private var url:String = "Image.gif"; private var size:uint = 80; public function BitmapExample() { configureAssets(); } private function configureAssets():void { var loader:Loader = new Loader(); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); var request:URLRequest = new URLRequest(url); loader.x = size * numChildren; loader.load(request); addChild(loader); } private function duplicateImage(original:Bitmap):Bitmap { var image:Bitmap = new Bitmap(original.bitmapData.clone()); image.x = size * numChildren; addChild(image); return image; } private function completeHandler(event:Event):void { var loader:Loader = Loader(event.target.loader); var image:Bitmap = Bitmap(loader.content); var duplicate:Bitmap = duplicateImage(image); var bitmapData:BitmapData = duplicate.bitmapData; var sourceRect:Rectangle = new Rectangle(0, 0, bitmapData.width, bitmapData.height); var destPoint:Point = new Point(); var operation:String = ">="; var threshold:uint = 0xCCCCCCCC; var color:uint = 0xFFFFFF00; var mask:uint = 0x000000FF; var copySource:Boolean = true; bitmapData.threshold(bitmapData, sourceRect, destPoint, operation, threshold, color, mask, copySource); } private function ioErrorHandler(event:IOErrorEvent):void { trace("Unable to load image: " + url); } } }
Tue Jun 12 2018, 01:09 PM Z