title: take snapshot of display object visible area in flash
body: <p>I have camera input app in flash (AS3) and I draw some graphics over it. I want to take the image snapshot of the stage visible area but only the video an graphics I draw over video. I want to exclude controls from the image snapshot. My display object layout is in following relation:</p>
  
  <pre><code>-stage
   --canvas (Sprite)
    ---video (Video)
    ---overlayed graphics (Sprites, MCs, Shapes)
   --controls (Buttons)
  </code></pre>
  
  <p>Stage size is fixed and I want to take a image snapshot of everything that is child of my canvas element (camera input video and overlayed graphics, but excluding controls). I am able to make this image snapshot when overlayed graphics are inside the bounds of stage size. I do it like this:</p>
  
  <pre><code>var bmpd:BitmapData = new BitmapData(canvas.width, canvas.height);
  bmpd.draw(canvas, new Matrix(1, 0, 0, 1, canvas.x, canvas.y));
  </code></pre>
  
  <p>But this gives me unwanted result when graphics which I draw on top of video on canvas exceed the bounds of stage display area. How do I limit the image snapshot only in the bounds of visible area inside stage?</p>
  
  <p>Thanks</p>