0

カメラからすべての写真を取得するための Adob​​e Flash ソリューションを誰かが知っているかどうか疑問に思っていたので、それらを自動的に私の Web サイトにアップロードできます (彼らが私の Web ページにアクセスしたとき)。

できればこれはすべて Web ブラウザーで行うことをお勧めしますが、それが可能かどうかはわかりません。そうでない場合、これを行う良い方法はありますか?

4

2 に答える 2

0

実際、デスクトップ Web カメラからこのようなことを行うのに問題はありません。

カメラを使用する許可を要求する必要があり、サイトがカメラの使用を希望していることを示すダイアログがユーザーに表示されますが、ユーザーが同意する限り、カメラから画像を取得できます。

最初に、カメラを初期化して接続する必要があります

var cam:Camera = Camera.getCamera();
var video:Video = new Video(320,240);
video.attachCamera(cam);
addChild(video);

次に、ビットマップ データ オブジェクトを作成する必要があります。

var bitmapData:BitmapData = new BitmapData(video.width,video.height);

次に、カメラをキャプチャする必要がある場合は、 draw 関数を使用できます。

bitmapData.draw(video);

as3corelibから jpg エンコーダーを取得して、それを jpg にエンコードし、それをサーバーに送信できるようにすることをお勧めします。マルチパート データ フォームを作成するための優れたクラスであるUploadPostHelperを使用すると、アップロード プロセスがはるかに簡単になります。

ByteArray byteArray = JPGEncoder.encode( bitmapData );

var urlRequest : URLRequest = new URLRequest();
urlRequest.url = 'http://your.server.com/destination';
urlRequest.contentType = 'multipart/form-data; boundary=' + UploadPostHelper.getBoundary();
urlRequest.method = URLRequestMethod.POST;
urlRequest.data = UploadPostHelper.getPostData( 'image.jpg', byteArray );
urlRequest.requestHeaders.push( new URLRequestHeader( 'Cache-Control', 'no-cache' ) );

// create the image loader & send the image to the server;
var urlLoader : URLLoader = new URLLoader();
urlLoader.dataFormat = URLLoaderDataFormat.BINARY;
urlLoader.load( urlRequest );

もちろん、完全なイベントをリッスンして、サーバーからの情報を返すこともできます。それが役立つことを願っています。

于 2012-08-23T23:20:17.293 に答える
0

AIR や、デスクトップ/モバイル ソフトウェアを生成する MDM Zinc などのフラッシュ エクステンダを使用して実行できます。しかし、非常に優れたセキュリティ上の理由から、これを Web 上の Flash で行うことはできません。ただし、FileReference ボックスを表示し、ユーザーに提供するファイルを選択させる適切な方法で実行できます。

于 2012-08-23T17:38:08.033 に答える