2010-07-19 71 views
0

我是一個總的Flash新手。我剛安裝了Flash CS5,並寫了下面的代碼:無法加載類或接口com.adobe.images.JPGEncoder

import flash.display.BitmapData 
import flash.geom.Matrix 
import com.adobe.images.JPGEncoder; 
import flash.net.FileReference; 
import flash.utils.ByteArray; 

//get the default camera 
//change your Default camera using the Flash Player Settings. 
cam=Camera.get() 
//this event is called whenever permission to access the local camera, is accepted or denied by the user 
cam.onStatus=function(e) 
{ 
    //if we are given permission 
    if(e.code == "Camera.Unmuted") 
    { 
     //start the application 
     initialize() 
    } 
    else 
    { 
     System.showSettings(3) 
    } 
} 

var snapshot:BitmapData=new BitmapData(cam.width,cam.height); 

function takeSnapshot() 
{ 
    var i:Number=1; 
    var fileRef:FileReference = new FileReference(); 
    snapshot.draw(cam,new Matrix()); 
    //saveImage(); 
    var encoder:JPGEncoder = new JPGEncoder(); 
    var ba:ByteArray = encoder.encode(bitmapData); 
    fileRef.save(ba,"capture"+i+".jpg"); 
    i++; 
} 


//if there are no Cameras 
if(cam == null) 
{ 
    System.showSettings(3) 
} 
else 
{ 
    cam.setMode(1024, 768, 30); 
    cam.setQuality(10000,0); 
    output.attachVideo(cam); 
    setInterval(this,"takeSnapshot",100); 
} 

在導出爲SWF,我得到的錯誤:

The class or interface com.adobe.images.JPGEncoder could not be loaded 

我已經下載從code.google權源as3corelibrary。 com並將該文件夾放在根目錄中。現在它是C:\ wamp \ www \ com \ adobe \ images \ JPGEncoder.as

是否有一些類路徑或我必須設置的東西?

回答

0

看起來你已經把代碼的as3corelib在Web服務器的根 - 你把源在源路徑的根文件夾。通常情況下,這是具有FLA的文件夾。將com文件夾複製到包含您的FLA的相同文件夾中,然後進行編譯。

如果您的FLA位於同一個文件夾(Web服務器的根目錄),那麼首先這是一個壞主意 - 每個人都可以訪問您的源代碼。

+0

哦,是的,我確實把as3corelib放在了我的服務器的根目錄下。 FLA文件在別的地方。如你所說,我會糾正自己。 – 2010-07-19 06:30:42

0

是的,你需要設置類路徑。

Adobe help

要設置應用程序級源 路徑:

  1. 選擇編輯首選項(Windows)或Flash>首選項(Macintosh)和 點擊的ActionScript類。
  2. 單擊「ActionScript 3.0設置」按鈕,並將路徑添加到源路徑列表中的 。
+0

你的意思是添加「C:\ wamp \ www \ com \ adobe \ images \ JPGEncoder.as」或者只是「C:\ wamp \ www \ com \ adobe \ images」? – 2010-07-19 06:31:42

+0

您應該添加'C:\ wamp \ www'。包'com.adobe.images'告訴編譯器在哪裏尋找類。 – 2010-07-19 13:35:20

相關問題