| Paket | flash.display |
| Klass | public class Bitmap |
| Arv | Bitmap DisplayObject EventDispatcher Object |
| Underklasser | FlexBitmap |
| Språkversion: | ActionScript 3.0 |
| Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Bitmap()-konstruktorn.
Med Bitmap()-konstruktorn kan du skapa ett Bitmap-objekt med en referens till ett BitmapData-objekt. När du har skapat ett Bitmap-objekt använder du den överordnade DisplayObjectContainer-instansens addChild()- eller addChildAt()-metod för att placera bitmappen i visningslistan.
Ett Bitmap-objekt kan dela sin BitmapData-referens på flera Bitmap-objekt oberoende av translationsegenskaper eller rotationsegenskaper. Eftersom du kan skapa flera Bitmap-objekt som refererar till samma BitmapData-objekt kan flera visningsobjekt använda samma komplex BitmapData-objekt utan att det medför den minnesbelastning som ett BitmapData-objekt för varje visningsobjektsinstans skulle ha inneburit.
Ett BitmapData-objekt kan skrivas till skärmen av ett Bitmap-objekt på två olika sätt - genom att använda vektorrenderaren som en bitmappsfyllform eller genom att använda en snabbare pixelkopieringsrutin. pixelkopieringsrutinen är betydligt snabbare än vektorrenderaren men Bitmap-objektet måste uppfylla vissa villkor för att den ska kunna användas:
- Utsträckning, rotering eller skevning kan inte tillämpas på Bitmap-objektet.
- Färgomformning kan inte tillämpas på Bitmap-objektet.
- Blandningsläget kan inte tillämpas på Bitmap-objektet.
- Beskärning kan inte göras genom maskeringslager eller
setMask()-metoder. - Bilden i sig kan inte vara en mask.
- Destinationskoordinaterna måste ligga på en hel pixelgräns.
Om du läser in ett bitmapobjekt från en annan domän än den för det Loader-objekt som användes för att läsa in bilden, och det inte finns någon URL-principfil som tillåter åtkomst av Loader-objektets domän, kan ett skript i den domänen inte få åtkomst till Bitmap-objektet eller dess egenskaper och metoder. Mer information finns i avsnittet Security på Flash Player Developer Center.
Obs! Bitmap-klassen utgör inte en underklass till InteractiveObject-klassen och kan därför inte skicka mushändelser. Du kan emellertid använda addEventListener()-metoden för den visningsobjektbehållare som innehåller Bitmap-objektet.
Relaterade API-element
| Egenskap | Definieras med | ||
|---|---|---|---|
![]() | accessibilityProperties : AccessibilityProperties
De nuvarande hjälpmedelsalternativen för det här visningsobjektet. | DisplayObject | |
![]() | alpha : Number
Anger det angivna objektets alfagenomskinlighetsvärde. | DisplayObject | |
| bitmapData : BitmapData
BitmapData-objektet som refereras. | Bitmap | ||
![]() | blendMode : String
Ett värde från klassen BlendMode som anger vilket blandningsläge som ska användas. | DisplayObject | |
![]() | blendShader : Shader [lässkyddad]
Ställer in en skuggning som används för blandning av förgrund och bakgrund. | DisplayObject | |
![]() | cacheAsBitmap : Boolean
Om det är true, sparar Flash-miljöerna en intern bitmappsrepresentation av visningsobjektet i cache-minnet. | DisplayObject | |
![]() | cacheAsBitmapMatrix : Matrix
Om detta inte är null definierar det här Matrix-objektet hur ett visningsobjekt återges när cacheAsBitmap har värdet true. | DisplayObject | |
![]() | constructor : Object
En referens till klassobjektet eller konstruktorfunktionen för en given objektinstans. | Object | |
![]() | filters : Array
En indexerad array som innehåller varje filterobjekt som är associerat med visningsobjektet. | DisplayObject | |
![]() | height : Number
Anger visningsobjektets höjd i pixlar. | DisplayObject | |
![]() | loaderInfo : LoaderInfo [skrivskyddad]
Returnerar ett LoaderInfo-objekt som innehåller information om hur filen som visningsobjektet tillhör ska läsas in. | DisplayObject | |
![]() | mask : DisplayObject
Det anropande visningsobjektet maskeras av det angivna visningsobjektet. | DisplayObject | |
![]() | metaData : Object
Erhåller metadataobjektet för instansen DisplayObject om metadata har lagrats tillsammans med instansen för detta DisplayObject i SWF-filen via en PlaceObject4-tagg. | DisplayObject | |
![]() | mouseX : Number [skrivskyddad]
Anger x-koordinaten för musens eller användarens indataenhets position i pixlar. | DisplayObject | |
![]() | mouseY : Number [skrivskyddad]
Anger y-koordinaten för musens eller användarens indataenhets position i pixlar. | DisplayObject | |
![]() | name : String
Anger instansnamnet för DisplayObject. | DisplayObject | |
![]() | opaqueBackground : Object
Anger om visningsobjektet är ogenomskinligt med en viss bakgrundsfärg. | DisplayObject | |
![]() | parent : DisplayObjectContainer [skrivskyddad]
Anger DisplayObjectContainer-objektet som innehåller visningsobjektet. | DisplayObject | |
| pixelSnapping : String
Avgör om Bitmap-objektet ska fästas mot närmsta pixel eller inte. | Bitmap | ||
![]() | root : DisplayObject [skrivskyddad]
För ett visningsobjekt i en inläst SWF-fil är rotegenskapen det översta visningsobjektet i den del av visningslistans trädstruktur som representeras av den SWF-filen. | DisplayObject | |
![]() | rotation : Number
Anger DisplayObject-instansens rotation i grader från den ursprungliga orienteringen. | DisplayObject | |
![]() | rotationX : Number
Anger x-axelsrotationen i grader för DisplayObject-instansen, från den ursprungliga orienteringen i förhållande till den överordnade 3D-behållaren. | DisplayObject | |
![]() | rotationY : Number
Anger y-axelsrotationen i grader för DisplayObject-instansen, från den ursprungliga orienteringen i förhållande till den överordnade 3D-behållaren. | DisplayObject | |
![]() | rotationZ : Number
Anger z-axelsrotationen i grader för DisplayObject-instansen, från den ursprungliga orienteringen i förhållande till den överordnade 3D-behållaren. | DisplayObject | |
![]() | scale9Grid : Rectangle
Det skalningsrutnät som används för närvarande. | DisplayObject | |
![]() | scaleX : Number
Anger vågrät skala (i procent) för objektet utifrån dess registreringspunkt. | DisplayObject | |
![]() | scaleY : Number
Anger lodrät skala (i procent) för objektet utifrån dess registreringspunkt. | DisplayObject | |
![]() | scaleZ : Number
Anger djupskala (procent) för objektet utifrån dess registreringspunkt. | DisplayObject | |
![]() | scrollRect : Rectangle
Visningsobjektets gränser för rullningsrektangeln. | DisplayObject | |
| smoothing : Boolean
Avgör om bitmappsbilden ska utjämnas när den skalas. | Bitmap | ||
![]() | stage : Stage [skrivskyddad]
Visningsobjektets scen. | DisplayObject | |
![]() | transform : flash.geom:Transform
Ett objekt med egenskaper som gäller ett visningsobjekts matris, färgomformning och pixelgränser. | DisplayObject | |
![]() | visible : Boolean
Om visingsobjektet är synligt eller inte. | DisplayObject | |
![]() | width : Number
Anger visningsobjektets bredd i pixlar. | DisplayObject | |
![]() | x : Number
Anger x-koordinaten för DisplayObject-instansen i förhållande till de lokala koordinaterna för den överordnade DisplayObjectContainer. | DisplayObject | |
![]() | y : Number
Anger y-koordinaten för DisplayObject-instansen i förhållande till de lokala koordinaterna för den överordnade DisplayObjectContainer. | DisplayObject | |
![]() | z : Number
Anger z-koordinatens position längs DisplayObject-instansens z-axel i förhållande till den överordnade 3D-behållaren. | DisplayObject | |
| Metod | Definieras med | ||
|---|---|---|---|
Initierar ett Bitmap-objekt som refererar till det angivna BitmapData-objektet. | Bitmap | ||
![]() | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registrerar ett händelseavlyssnarobjekt för ett EventDispatcher-objekt så att avlyssnaren får meddelanden om händelser. | EventDispatcher | |
![]() |
Skickar en händelse till händelseflödet. | EventDispatcher | |
![]() |
Returnerar en rektangel som definierar visningsområdets område i relation till targetCoordinateSpace-objektets koordinatsystem. | DisplayObject | |
![]() |
Returnerar en rektangel som definierar visningsområdets gräns, baserat på koordinatsystemet som definieras av targetCoordinateSpace-parametern, exklusive eventuella linjer i former. | DisplayObject | |
![]() |
Konverterar punktobjektet från scenens (globala) koordinater till visningsobjektets (lokala) koordinater. | DisplayObject | |
![]() |
Konverterar en tvådimensionell punkt från scenens (globala) koordinater till ett tredimensionellt visningsobjekts (lokala) koordinater. | DisplayObject | |
![]() |
Kontrollerar om EventDispatcher-objektet har några avlyssnare registrerade för en viss typ av händelse. | EventDispatcher | |
![]() |
Anger om det finns en egenskap angiven för ett objekt. | Object | |
![]() |
Utvärderar begränsningsramen för visningsobjektet för att kontrollera om den överlappar eller korsar begränsningsramen för obj-visningsobjektet. | DisplayObject | |
![]() |
Utvärderar visningsobjektet för att avgöra om det överlappar eller korsar den punkt som anges av x- och y-parametrarna. | DisplayObject | |
![]() |
Anger om en instans av klassen Object finns i prototypkedjan för objektet som anges som parameter. | Object | |
![]() |
Konverterar en tredimensionell punkt för det tredimensionella visningsobjektets (lokala) koordinater till en tvådimensionell punkt i scenens (globala) koordinater. | DisplayObject | |
![]() |
Konverterar punktobjektet från visningsobjektets (lokala) koordinater till scenens (globala) koordinater. | DisplayObject | |
![]() |
Anger om den angivna egenskapen finns och är uppräkningsbar. | Object | |
![]() |
Tar bort en avlyssnare från EventDispatcher-objektet. | EventDispatcher | |
![]() |
Anger tillgänglighet för en dynamisk egenskap för slingåtgärder. | Object | |
![]() |
Returnerar det här objektets strängrepresentation, formaterad i enlighet med språkspecifika konventioner. | Object | |
![]() |
Returnerar det angivna objektets strängbeteckning. | Object | |
![]() |
Returnerar det angivna objektets primitiva värde. | Object | |
![]() |
Kontrollerar om en händelseavlyssnare är registrerad för det här EventDispatcher-objektet eller något av dess överordnade objekt för den angivna händelsetypen. | EventDispatcher | |
bitmapData | egenskap |
bitmapData:BitmapData| Språkversion: | ActionScript 3.0 |
| Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Lite 4 |
BitmapData-objektet som refereras.
Implementering
public function get bitmapData():BitmapData public function set bitmapData(value:BitmapData):voidpixelSnapping | egenskap |
pixelSnapping:String| Språkversion: | ActionScript 3.0 |
| Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Avgör om Bitmap-objektet ska fästas mot närmsta pixel eller inte. PixelSnapping-klassen innefattar möjliga värden:
PixelSnapping.NEVER– Ingen pixelfästning sker.PixelSnapping.ALWAYS– Bilden fästs alltid vid närmaste pixel, oavsett omformning.PixelSnapping.AUTO– Bilden fästs vid närmaste pixel om den har ritats utan rotation eller skevning och med en skalfaktor på 99,9 till 100,1 %. Om dessa villkor är uppfyllda ritas bitmappsbilden i skalan 100 % och fästs vid närmaste pixel. Internt gör detta värde det möjligt att rita bilden så snabbt som möjligt med hjälp av vektorrenderaren.
Implementering
public function get pixelSnapping():String public function set pixelSnapping(value:String):voidsmoothing | egenskap |
smoothing:Boolean| Språkversion: | ActionScript 3.0 |
| Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Avgör om bitmappsbilden ska utjämnas när den skalas. Om true utjämnas bitmappsbilden när den skalas. Om false utjämnas bitmappsbilden inte när den skalas.
Implementering
public function get smoothing():Boolean public function set smoothing(value:Boolean):voidBitmap | () | Konstruktor |
public function Bitmap(bitmapData:BitmapData = null, pixelSnapping:String = "auto", smoothing:Boolean = false)| Språkversion: | ActionScript 3.0 |
| Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Initierar ett Bitmap-objekt som refererar till det angivna BitmapData-objektet.
ParametrarbitmapData:BitmapData (default = null) — BitmapData-objektet som refereras.
| |||
pixelSnapping:String (default = "auto") — Om Bitmap-objektet ska fästas mot närmsta pixel eller inte.
| |||
smoothing:Boolean (default = false) — Om bitmappsbilden ska utjämnas när den skalas. De exempel som följer visar exempelvis samma bitmapp skalad med en faktor 3, med utjämning satt till false (vänster) respektive true (höger):
|
Exempel ( Så här använder du exemplet )
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()-metoden. Uppgiften genomförs med följande steg:
- En
url-egenskap skapas bestående av bildfilens plats och namn - Klasskonstruktorn anropar
configureAssets()-metoden, som i sin tur anroparcompleteHandler()-metoden. configureAssets()skapar ett inläsningsobjekt, som instansierar en händelseavlyssnare som skickas närcompleteHandler()slutför bildmanipuleringen.- Sedan skapar
buildChild()en ny instans av ett URLRequest-objekt,request, med en överfördurlså att filnamnet och platsen blir kända. Begäranobjektetskickas tillloader.load()-metoden, som läser in bilden i minnet via ett visningsobjekt.- Bilden läggs därefter in i visningslistan, som omedelbart visar bilden på skärmen i koordinaterna x = 0, y = 0.
- Sedan gör
completeHandler()-metoden följande:- Skapar ett andra Loader-objekt, tillsammans med ett Bitmap-objekt, som initieras med Loader-objektet.
- Skapar ett andra Bitmap-objekt,
dublett, som i sin tur anroparduplicateImage()-metoden, som skapar en dubblett av originalbilden. - Skapar ett BitmapData-objekt som tilldelas till
duplicate-objektets BitmapData-objekt. - Skapar ett nytt Rectangle-objekt, som initieras med samma koordinater, bredd och höjd som originalbilden.
- Skapar ett nytt Point-objekt, som har standardvärdena x = 0, y = 0.
- Skapar följande variabler:
operation: applicerar den nya färgen när tröskelvärdet är >= ursprungsvärdet.threshold: det värde varje pixel jämförs med är satt till ljusgrått med ett alfavärde på 0xCC.color: den färg de pixlar som klarar tröskeltestet ställts in på – i det här fallet kraftigt gult.mask: satt till raka motsatsen till färg (genomskinligt blått).copySource: satt till false, vilket anger att pixelvärdena inte kopieras om tröskelvärdet inte godkänns. Detta värde är betydelselöst eftersom bilden är dubblerad och endast de pixlar som klarar tröskeln ändras.
- Anropar
threshold()-metoden med de föregående variablerna. Den resulterande tröskelekvationen ser ut så här:om (aktuellt pixelvärde & 0x000000FF) >= (0xCCCCCCCC & 0x000000FF) sätts pixeln till 0xFFFFFF00.
Anteckningar:
- Du måste kompilera SWF-filen med "Lokal uppspelningssäkerhet" inställt på "Använd bara lokala filer".
- I det här exemplet måste en fil med namnet Image.gif placeras i samma katalog som din SWF-fil.
- Vi rekommenderar att du använder en bild med en bredd på upp till 80 pixlar.
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:40 PM Z
Dölj ärvda publika egenskaper
Visa ärvda publika egenskaper

