画像の一部がダウンロードされる。
ページ一番下の参考サイトをみつつ短くしたもの
(注:PHPはわからないので、AS3のみでどうにかしたいとあがいたもの失敗作動きません)
var fileRef:FileReference = new FileReference();//新しいオブジェクト作成
var myBitmapData:BitmapData= new BitmapData(100,100);//新しいオブジェクト作成
myBitmapData.draw(aa); //aaはインスタンス名
//kamera_iconは、ボタンのインスタンス名
kamera_icon.addEventListener(MouseEvent.CLICK,kamera);
function kamera(event:MouseEvent):void{
var fn:String="photo.jpg";
fileRef.download(myBitmapData,fn);
};
そもそも…サーバーに上げてない、あげない
FileReference.download() メソッドを使用すると、サーバー上のファイルをユーザーがダウンロードできます。
~ActionScript 3.0 コンポーネントリファレンスガイドより~
↓↓↓解決策
◆PHPをやりたくなかったら、便利ツール(ざっくりいうと、ビットマップをJPEG画像に変換してくれるもの)をダウンロード
↓↓とっても親切サイト↓↓
英語がわかんなくてもダウンロードの仕方からそれ以降の作業がわかりやすい
▼おきらくFLASH講座 : FileReferenceクラスを使って| マイナビクリエイター
http://creator.mynavi-agent.jp/special/flash/fl_060.html
ページが突然なくなったら困るので
上記サイトより簡単なメモ↓↓
【http://code.google.com/p/as3corelib/】から【Downloads】メニューにいって、
英文の中の【all downloads】をクリック。
【as3corelib-.93.zip 】ファイルをダウンロードして、解凍、その中の【src】をクリックして、
その中の【com】を丸ごとフラッシュデータと同じとこにおいとく。
flaファイルはこれ↓↓
import com.adobe.images.JPGEncoder;//便利ツール【com】をよんでます。
var fileRef:FileReference = new FileReference();//新しいオブジェクト作成
var myBitmapData:BitmapData= new BitmapData(100,100);//ダウンロードする範囲
myBitmapData.draw(aa);
kamera_icon.addEventListener(MouseEvent.CLICK,kamera);
function kamera(event:MouseEvent):void{
var encoder: JPGEncoder = new JPGEncoder(80);
var byteArray:ByteArray = encoder.encode(myBitmapData);
//↑を一行にすると→var byteArray:ByteArray = new JPGEncoder(80).encode(myBitmapData
);
var fn:String="テスト4.jpg";
fileRef.save(byteArray,fn);
};
さっきの失敗作に、便利ツールを追加して、最後のFileReference を
「.download」→「save」
に変更したもの
右下のカメラをクリックすると、インスタンス「aa」の100px×100pxがJPEGで保存される。
----------参考サイト---------
▼ blog.azzip-azzip.com
・AS3.0_FileReferenceクラスで画像の読み込みと保存
http://blog.azzip-azzip.com/2010/04/as3-0_filereference%E3%82%AF%E3%83%A9%E3%82%B9%E3%81%A7%E7%94%BB%E5%83%8F%E3%81%AE%E8%AA%AD%E3%81%BF%E8%BE%BC%E3%81%BF%E3%81%A8%E4%BF%9D%E5%AD%98/
▼FLASHで遊ぼう!
・ムービーをJPEGで保存する2
http://flashjp.com/as3/saveasjpg2.php
▼にゃあプロジェクト - ウェブログ - FileReferenceを使ってみる (1)
・FileReferenceを使ってみる (1)
http://www.project-nya.jp/modules/weblog/weblog-tb.php/672
---------------------------------------------------
0 件のコメント:
コメントを投稿