adobe的一些as3類庫提供給google code(http://actionscript3libraries.riaforge.org/)可以隨意下載...
其中的as3corelib里面包含image的png和jpg類和json(序列化數據)類包.
同時amfphp1.9beta的發布可以讓你用remoting來傳遞amf3格式的數據.
那么有了這兩個條件我們就可以用他們來直接生成png和jpg格式的圖片...
使用方法也是比較簡單,使用前面我提供的方法可以很方便的實現...
as3corelib里面的png和jpg類
[down=attachments/month_0709/r2007917165754.rar]點擊下載此文件[/down]
as代碼:
//------------------------------------------------------------------------------------
//在舞臺上放一個mc名字為a,mc包含一些隨意的圖形
import flash.net.*;
import flash.display.*;
var hostName:String = "http://localhost/amfphp/";
var gatewayUrl:String = hostName+"gateway.php";
////////////////////////////
var bpd:BitmapData = new BitmapData(a.width, a.height);
bpd.draw(a);
//var jpegEnc:JPEGEncoder = new JPEGEncoder(80);
//var dat:ByteArray = jpegEnc.encode(bpd);
var dat:ByteArray = PNGEncoder.encode(bpd);
//
var nc:NetConnection = new NetConnection();
//nc.objectEncoding = 0;
nc.connect(gatewayUrl);
//
nc.call("SavePic.save",new Responder(onResult,onFault),dat);
//nc.call("SavePic.test",new Responder(onResult,onFault),"h..roading");
/////////////////////////////
function onResult(re:Object)
{
trace(re);
}
function onFault(re:Object)
{
trace(re);
for(var i in re)
trace(i+"=>"+re[i]);
}
//----------------------------------------------------------------------------------------------
php代碼:
1 //-----------------------------------------------------------------------------------------------
2 <?php
3
4 class SavePic
5 {
6
7 function Tuya()
8 {
9 $this->methodTable = array(
10 "save" => array(
11 "access" => "remote"
12 ),
13 "test" => array(
14 "access" => "remote"
15 )
16 );
17 }
18 function test($str)
19 {
20 return $str;
21
22
23 }
24
25
26 function save($data)
27 {
28 $name = time().'.jpg'; //png
29
30 $im = fopen($name,'a');
31
32 fwrite($im,$data);
33
34 fclose($im);
35
36 return $name;
37 }
38 }
39 ?>
40
41
posted on 2008-07-29 14:05
姜大叔 閱讀(246)
評論(0) 編輯 收藏 所屬分類:
Flash/Flex