2011年8月10日 星期三

[教學] Adobe AIR 啟用預設拍攝模式

Android , BlackBerry 和iOS 各有自家的拍攝模式, 可以給用戶拍攝前自行調整影像, 還可儲存於用戶資料夾中.
Adobe AIR 能啟用預設拍攝模式, 使用預設方式進行拍攝, 然後產生BitmapData 按自己需要使用.

範例功能:
  • 開啟預設拍攝模式, 用戶確定後, 獲取BitmapData 資料.
範例使用類別說明:
  • CameraUI - 使用裝置上的預設攝影機應用程式,擷取靜態影像或視訊
  • Loader - 載入 SWF 檔案或影像檔
  • BitmapData - 建立任意調整大小的透明或不透明點陣圖影像,而且在執行階段中以各種方式操作
  • CameraRoll - 存取系統媒體庫或「相機膠捲」中的影像資料

Step 1: 建立預設相機 (利用CameraUI 產生Camera 物件)
var camera:CameraUI = new CameraUI();
camera.launch(MediaType.IMAGE);

Step 2: 載入拍攝後的資料 (把MediaPromise 傳給Loader 處理)
var mediaPromise:MediaPromise = event.data;
var loader:Loader = new Loader();
loader.loadFilePromise(mediaPromise);

Step 3: 最後, 把資料轉為可用圖像 (轉換成BitmapData 物件)
var loaderInfo:LoaderInfo = event.target as LoaderInfo;
var bitmapData:BitmapData = new BitmapData(loaderInfo.width, loaderInfo.height);
bitmapData.draw(loaderInfo.loader);

大家可以 [下載], 然後一齊使用預設拍攝模式, 製作自己的程式玩玩.

注意事項:
  • iOS 預設不會儲存影像, 我們可以利用CameraRoll 存放於系統媒體庫
  • 使用Android 電話作測試平台, 請確定android.permission.CAMERA 是開啟

參考資料: http://cookbooks.adobe.com/post_Use_CameraUI_to_save_image_to_CameraRoll_on_iOS-19113.html

1 則留言:

不好說 提到...

請問大大!我使用cameraui 直立拍完照之後,照片會自動旋轉,甚至高寬會顛倒過來,但是部分手機不會這樣!大大是否有遇到過這種問題?