Захват части видеоклипа - PullRequest
0 голосов
/ 10 мая 2011

У меня есть видеоклип на сцене.Его 500х400.К нему добавлено много детей разных размеров.Как я могу захватить область 300x200 мувиклипа из (0,0).Предположим, что был ребенок с (100 100) шириной и высотой 300, тогда я должен видеть от этого ребенка от 100 до 300 и от 100 до 200 соответственно.Остальная часть области не нужна.Я должен быть в состоянии управлять захваченным изображением позже.Поэтому я думаю, что я должен захватить его как растровое изображение.Но как это можно сделать?

1 Ответ

3 голосов
/ 10 мая 2011
var bd:BitmapData = new BitmapData(300, 200, true, 0);
bd.draw(your_movieclip);

var bitmap:Bitmap = new Bitmap(bd);

addChild(bitmap);

Или вы можете попробовать использовать этот быстрый класс:

package
{
    import flash.display.DisplayObject;
    import flash.display.BitmapData;
    import flash.display.Bitmap;

    public class BitmapGrab extends Bitmap
    {
        /**
         * Copies a section of a MovieClip and stores as BitmapData
         * @param target The target DisplayObject to draw from
         * @param wpx The area width
         * @param hpx The area height
         */
        public function copyGraphics(target:DisplayObject, wpx:uint, hpx:uint):void
        {
            bitmapData = new BitmapData(wpx, hpx, true, 0);
            _bmd.draw(target);
        }
    }
}

Для использования:

var bmg:BitmapGrab = new BitmapGrab();
bmg.copyGraphics(your_movieclip, 300, 200);

addChild(bmg);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...