How do you load a bitmap file into a BitmapData object?

后端 未结 5 1740
遥遥无期
遥遥无期 2020-12-15 21:41

In Flash, the BitmapData object can be used to store bitmaps in RAM, you can later draw them to a MovieClip using the beginBitmapFill() method.

How do you load an ex

相关标签:
5条回答
  • 2020-12-15 21:47

    AS3 code to load a PNG and "get" its bitmapData

    var bitmapData:BitmapData;
    
    var loader:Loader = new Loader();
        loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
        loader.load(new URLRequest("../lib/img.png"));
    
    function onComplete (event:Event):void
    {
        bitmapData = Bitmap(LoaderInfo(event.target).content).bitmapData;
    }
    
    0 讨论(0)
  • 2020-12-15 21:49

    You have to load the external file (.jpg) into a MovieClip and wait for it to load.

    Then take a snapshot of the MovieClip that contains the external file, into your BitmapData object.

    myBitmap = new BitmapData(myMC._width, myMC._height,true,0x00FFFFFF)
    
    myBitmap.draw( myMC)
    

    See Introducing the Image API in Flash 8.

    0 讨论(0)
  • 2020-12-15 21:57

    GUI phase:
    Load the image into the library (file -> import -> library).
    In the library browser, right-click and hit "properties", notice that it is X by Y pixels.
    Open up the "advanced" tab.
    Select "export for Action Script". Export as myImg

    Actionscript phase:

    import flash.display.BitmapData;
    import flash.display.Bitmap; //needed?
    ..........
    var myPic:BitmapData = new myImg(X,Y);
    
    0 讨论(0)
  • 2020-12-15 22:01

    taking from cotton and will, this will display the bitmap after it is loaded:

    import flash.display.Bitmap;
    import flash.display.BitmapData;
    
    var bitmapData:BitmapData;
    var bmVis:Bitmap;
    
    var loader:Loader = new Loader();
        loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
        loader.load(new URLRequest("put url here"));
    
    function onComplete (event:Event):void
    {
        trace("loaded!");
        bitmapData = event.target.content.bitmapData;
        bmVis = new Bitmap(bitmapData);
        this.addChild(bmVis);
    }
    
    0 讨论(0)
  • 2020-12-15 22:04

    Refering to the first post by cotton.

    Actually each image is a bitmap so all you need to do is

    bitmapData = event.target.content.bitmapData  
    

    instead of

    bitmapData = Bitmap(LoaderInfo(event.target).content).bitmapData;
    
    0 讨论(0)
提交回复
热议问题