Конечно ... попробуйте поискать в Google ... Есть множество способов. Это при условии, что вы в порядке со стандартными классами флэш. Если вы буквально имеете в виду отсутствие уроков, тогда удачи вам.
Вот один из способов сделать это. флэш-PHP-загрузка
В основном, ключевые моменты заключаются в том, что вы создаете кодировщик JPEG, который будет кодировать ваше изображение в формате JPEG (вы можете сделать PNG, если хотите, также), например:
var jpgEncoder:JPGEncoder;
jpgEncoder = new JPGEncoder(90);
Затем вы кодируете сцену, сначала рисуя ее данные в растровое изображение, а затем кодируя это:
var bitmapData:BitmapData = new BitmapData(stage.width, stage.height);
bitmapData.draw(stage, new Matrix());
img = jpgEncoder.encode(bitmapData);
Теперь, в зависимости от того, какую вспышку вы используете, вы можете сделать следующее, чтобы предложить пользователю сохранить:
var file:FileReference = new FileReference();
file.save(img, "filename.jpg");
Или, если вы хотите сохранить его на сервере, вы можете сделать следующее:
var sendHeader:URLRequestHeader = new URLRequestHeader("Content-type","application/octet-stream");
var sendReq:URLRequest = new URLRequest("path-to-php.php");
sendReq.requestHeaders.push(sendHeader);
sendReq.method = URLRequestMethod.POST;
sendReq.data = img;
var sendLoader:URLLoader;
sendLoader = new URLLoader();
sendLoader.addEventListener(Event.COMPLETE, imageSentHandler);
sendLoader.load(sendReq);
И тогда вам нужен файл PHP со следующим:
<?php
if ( isset ( $GLOBALS["HTTP_RAW_POST_DATA"] )) {
$filename = "filename.jpg";
$fp = fopen( $filename,"wb");
fwrite( $fp, $GLOBALS[ 'HTTP_RAW_POST_DATA' ] );
fclose( $fp );
echo "filename=".$filename."&base=".$_SERVER["HTTP_HOST"].dirname($_SERVER["PHP_SELF"]);
}
?>
Обратите внимание, что я не проверял этот код на наличие ошибок, но общая идея верна, и вы должны иметь возможность использовать его и вносить изменения, необходимые для вашей программы.