Есть необходимость сохранять изображение из Flash в формат JPG.
А точнее - сделать скриншот.
Поиски привели к статье: Export JPEG with Flash/PHP - bitmap сканируется в строку base64 и передается на сервер, где ее ловит PHP-скритп и транслирует в формат JPG.
Способ применим начиная с 8й версии FlashPlayer.
Другая статья: PNG Encoder in AS3 - здесь bitmap конвертируется в байтовый массив содержащий изображение в формате PNG.
Рядом - класс-конвертер Bitmap в JPG: More fun with image formats in AS3. Код прилагается.
Как сохранить ByteArray на сервер в файл: Save ByteArray to file with PHP
Еще статейка с сохранением PNG и JPG для Flash 8: Saving JPEGs or PNGs with Flash 8 Revisited. С исходниками.
* * *
Использовал последнюю статью (Saving JPEGs or PNGs with Flash 8 Revisited) - работает ОТЛИЧНО! Превосходный интерфейс, документировано, отличная демка.
7 комментариев:
Обалденно! Чувак, ты моё спасение.
Дык я то что? Это вон Квазимодам и другим флэш-гуру низкий поклон :)
У меня ошибку выдает, не знаешь с чем связанно?
ERROR: [onImageHandle] HTTP Error null
Трудно сказать - я пользовал движок не вдаваясь в подробности и не сталкивался с такой проблемой. Нужно прочесать исходники.
Вспомнил, что была проблема с сохранением в режиме mode="palette". Он самый экономичный, но почему-то глючный.
А ошибка "[onImageHandle] HTTP Error" генерится в обработчике onImageHandle события загрузки LoadVars при status=false. Возможно это ошибка ответа сервера в процессе сохранения картинки.
Отличная вещь! Спасибо!
На локале всё работает безупречно, но когда swf выложил на сайт, изображение перестало сохраняться (хотя окошко выбора пути и имени файла открывается).
Подскажите пожалуйста, как это можно исправить?
makctt@mail.ru
Спасибо
Первое, что приходит на ум, это проверить атрибуты директории, в которую происходит сохранение изображений на сервере. Возможно, скрипту просто не удается сохранить файл изображения.
Попробуй покопать в этом направлении.
Отправить комментарий