SWF в JPG с использованием ActionScript - PullRequest
0 голосов
/ 17 июня 2009

Возможно ли преобразовать SWF в изображение с помощью Actionscript.

1 Ответ

2 голосов
/ 18 июня 2009

Ваш вопрос требует немного больше деталей.Поэтому я сделаю некоторые предположения.

Я предполагаю, что вы хотите сделать снимок текущего состояния вашего SWF-файла, а затем сохранить его как файл изображения.Вы не говорите нам, где хотите сохранить изображение, например, на сервере, на локальной машине пользователя, или даже храните его во флэш-памяти и т. Д., Поэтому я не могу вам особо помочь.

Этодовольно легко получить снимок вашего SWF.То, что вы хотите, это класс BitmapData.Эта функция должна помочь.Просто передайте ему ссылку на DisplayObject (может быть stage), и он вернет вам объект BitmapData.

function snapClip(clip:DisplayObject):BitmapData
{
    var bmpData:BitmapData = new BitmapData(stage.width, stage.height, true, 0);
    bmpData.draw( clip, new Matrix() );
    return bmpData;
}

var bmpData:BitmapData = snapClip( stage );

Оттуда вы можете добавить BitmapData к сцене следующим образом:

var mc:MovieClip = new MovieClip();
mc.addChild( new Bitmap(bmpData) );
addChild(mc);

Или вы можете закодировать ваши BitmapData в формат JPEG:

import com.adobe.images.JPGEncoder;
var jpgEncoder:JPGEncoder = new JPGEncoder(85);
var jpgStream:ByteArray = jpgEncoder.encode(bmpData);

Отсюда, чтобы сохранить их на сервере, вам нужно отправить byteArray на серверный скрипт, который может обработать сохранение.

Вот несколько ссылок, которые могут помочь:

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