HTML5+學習筆記2-------邊看代碼邊研究貌似仍是有點問題...還在研究中api中

// 拍照
function getImage() {
    outSet( "開始拍照:" );
    var cmr = plus.camera.getCamera();
    cmr.captureImage( function ( p ) {
        outLine( "成功:"+p );
        plus.io.resolveLocalFileSystemURL( p, function ( entry ) {
            createItem( entry );
        }, function ( e ) {
            outLine( "讀取拍照文件錯誤:"+e.message );
        } );
    }, function ( e ) {
        outLine( "失敗:"+e.message );
    }, {filename:"_doc/camera/",index:1} );
}

 

// 錄像
function getVideo() {
    outSet( "開始錄像:" );
    var cmr = plus.camera.getCamera();
    cmr.startVideoCapture( function ( p ) {
        outLine( "成功:"+p );
        plus.io.resolveLocalFileSystemURL( p, function( entry) {
            createItem( entry );
        }, function( e ) {
            outLine( "讀取錄像文件錯誤:"+e.message );
        } );
    }, function( e ){
        outLine( "失敗:"+e.message );
    }, {filename:"_doc/camera/",index:i} );
}

 

 

 

camera

Camera模塊管理設備的攝像頭,可用於拍照、攝像操做,經過plus.camera獲取攝像頭管理對象。javascript

方法:

對象:

回調方法:

權限:

permissionshtml

"Camera":{"description":"訪問攝像頭設備"}

getCamera

獲取攝像頭管理對象java

Camera plus.camera.getCamera( index );

說明:

獲取須要操做的攝像頭對象,若是要進行拍照或攝像操做,需先經過此方法獲取攝像頭對象。數組

參數:

  • index: ( Number ) 可選 要獲取攝像頭的索引值
    指定要獲取攝像頭的索引值,1表示主攝像頭,2表示輔攝像頭。若是沒有設置則使用系統默認主攝像頭。

返回值:

Camera : 攝像頭對象

平臺支持:

  • Android - 2.2+ (支持)
  • iOS - 4.3+ (支持)

示例:

<!DOCTYPE html><html><head><metacharset="utf-8"><title>Camera Example</title><scripttype="text/javascript">// 擴展API加載完畢後調用onPlusReady回調函數  document.addEventListener("plusready", onPlusReady,false);var r =null;// 擴展API加載完畢,如今能夠正常調用擴展API function onPlusReady(){// 獲取設備默認的攝像頭對象 var cmr = plus.camera.getCamera();// ...... }</script></head><body></body></html>

Camera

攝像頭對象ide

interfaceCamera{readonly attribute DOMString[] supportedImageResolutions;readonly attribute DOMString[] supportedVideoResolutions;readonly attribute DOMString[] supportedImageFormats;readonly attribute DOMString[] supportedVideoFormats;functionvoid captureImage( successCB, errorCB, option );functionvoid startVideoCapture( successCB, errorCB, option );functionvoid stopVideoCapture();}

屬性:

方法:

supportedImageResolutions

字符串數組,攝像頭支持的拍照分辨率函數

說明:

Array 類型 只讀屬性spa

屬性類型爲DOMString[],若不支持此屬性則返回空數組對象。攝像頭支持的拍照圖片分辨率字符串形式「WIDTH*Height」,如「400*800」;若是支持任意自定義分辨率則「*」。code

平臺支持:

  • Android (支持)
  • iOS (不支持): 返回空數組對象

示例:

<!DOCTYPE html><html><head><metacharset="utf-8"><title>Camera Example</title><scripttype="text/javascript">// 擴展API加載完畢後調用onPlusReady回調函數  document.addEventListener("plusready", onPlusReady,false);// 擴展API加載完畢,如今能夠正常調用擴展API function onPlusReady(){var cmr = plus.camera.getCamera(); alert("Camera supperted image resolutions: "+ cmr.supportedImageResolutions );}</script></head><body></body></html>

supportedVideoResolutions

字符串數組,攝像頭支持的攝像分辨率orm

說明:

Array 類型 只讀屬性視頻

屬性類型爲String[],若不支持此屬性則返回空數組對象。攝像頭支持的視頻分辨率字符串形式爲「WIDTH*Height」,如「400*800」;若是支持任意自定義分辨率則「*」。

平臺支持:

  • Android (支持)
  • iOS (不支持): 返回空數組對象

示例:

<!DOCTYPE html><html><head><metacharset="utf-8"><title>Camera Example</title><scripttype="text/javascript">// 擴展API加載完畢後調用onPlusReady回調函數  document.addEventListener("plusready", onPlusReady,false);// 擴展API加載完畢,如今能夠正常調用擴展API function onPlusReady(){var cmr = plus.camera.getCamera(); alert("Camera supperted image resolutions: "+ cmr.supportedImageResolutions );}</script></head><body></body></html>

supportedImageFormats

字符串數組,攝像頭支持的拍照文件格式

說明:

Array 類型 只讀屬性

屬性類型爲String[],若不支持此屬性則返回空數組對象。攝像頭支持的圖片文件格式字符串形式爲文件格式後綴名,如「jpg」、「png」、「bmp」。

平臺支持:

  • Android (支持)
  • iOS (不支持): 返回空數組對象

示例:

<!DOCTYPE html><html><head><metacharset="utf-8"><title>Camera Example</title><scripttype="text/javascript">// 擴展API加載完畢後調用onPlusReady回調函數  document.addEventListener("plusready", onPlusReady,false);// 擴展API加載完畢,如今能夠正常調用擴展API function onPlusReady(){var cmr = plus.camera.getCamera(); alert("Camera supperted image formats: "+ cmr.supportedImageFormats );}</script></head><body></body></html>

supportedVideoFormats

字符串數組,攝像頭支持的攝像文件格式

說明:

Array 類型 只讀屬性

屬性類型爲String[],若不支持此屬性則返回空數組對象。攝像頭支持的視頻文件格式字符串形式爲文件格式後綴名,如「3gp」、「mp4」、「avi」。

平臺支持:

  • Android (支持)
  • iOS (不支持): 返回空數組對象

示例:

<!DOCTYPE html><html><head><metacharset="utf-8"><title>Camera Example</title><scripttype="text/javascript">// 擴展API加載完畢後調用onPlusReady回調函數  document.addEventListener("plusready", onPlusReady,false);// 擴展API加載完畢,如今能夠正常調用擴展API function onPlusReady(){var cmr = plus.camera.getCamera(); alert("Camera supperted video formats: "+ cmr.supportedVideoFormats );}</script></head><body></body></html>

captureImage

進行拍照操做

 cmr.captureImage( successCB, errorCB, option );

說明:

攝像頭資源爲獨佔資源,若是其它程序或頁面已經佔用攝像頭,再次操做則失敗。 拍照操做成功將經過successCB返回拍照獲取的圖片路徑。 可經過option設置攝像頭的各類屬性參數。

參數:

返回值:

void : 無

平臺支持:

  • Android - 2.2+ (支持)
  • iOS - 4.3+ (支持)

示例:

<!DOCTYPE html><html><head><metacharset="utf-8"><title>Camera Example</title><scripttype="text/javascript">// 擴展API加載完畢後調用onPlusReady回調函數  document.addEventListener("plusready", onPlusReady,false);var r =null;// 擴展API加載完畢,如今能夠正常調用擴展API function onPlusReady(){var cmr = plus.camera.getCamera();var res = cmr.supportedImageResolutions[0];var fmt = cmr.supportedImageFormats[0]; cmr.captureImage(function( path ){ alert("Capture image success: "+ path );},function( error ){ alert("Capture image failed: "+ error.message );},{resolution:res, format:fmt });}</script></head><body></body></html>

startVideoCapture

調用攝像頭進行攝像操做

 cmr.startVideoCapture( successCB, errorCB, option );

說明:

攝像頭資源爲獨佔資源,若是其它程序或頁面已經佔用攝像頭,再次操做則失敗。 拍照操做成功將經過successCB返回攝像獲取的視頻文件路徑。 可經過option設置攝像頭的各類屬性參數。

參數:

返回值:

void : 無

平臺支持:

  • Android - 2.2+ (支持)
  • iOS - 4.3+ (支持)

示例:

<!DOCTYPE html><html><head><metacharset="utf-8"><title>Camera Example</title><scripttype="text/javascript">// 擴展API加載完畢後調用onPlusReady回調函數  document.addEventListener("plusready", onPlusReady,false);var r =null;// 擴展API加載完畢,如今能夠正常調用擴展API function onPlusReady(){var cmr = plus.camera.getCamera();var res = cmr.supportedVideoResolutions[0];var fmt = cmr.supportedVideoFormats[0]; cmr.startVideoCapture(function( path ){ alert("Capture video success: "+ path );},function( error ){ alert("Capture video failed: "+ error.message );},{resolution:res, format:fmt });}</script></head><body></body></html>

stopVideoCapture

結束攝像操做

 cmr.stopVideoCapture();

說明:

開始調用攝像頭進行攝像操做後,可在後臺結束攝像操做,與用戶在界面結束操做效果一致。 攝像操做成功將經過startVideoCapture函數中的successCB返回拍照獲取的圖片路徑。 用戶若是沒有進行攝像操做關閉攝像頭頁面則調用失敗回調函數。

參數:

返回值:

void : 無

平臺支持:

  • Android - 2.2+ (支持)
  • iOS - 4.3+ (支持)

示例:

<!DOCTYPE html><html><head><metacharset="utf-8"><title>Camera Example</title><scripttype="text/javascript">// 擴展API加載完畢後調用onPlusReady回調函數  document.addEventListener("plusready", onPlusReady,false);var r =null;// 擴展API加載完畢,如今能夠正常調用擴展API function onPlusReady(){var cmr = plus.camera.getCamera();var res = cmr.supportedVideoResolutions[0];var fmt = cmr.supportedVideoFormats[0]; cmr.startVideoCapture(function( path ){ alert("Capture video success: "+ path );},function( error ){ alert("Capture video failed: "+ error.message );},{resolution:res, format:fmt });// 拍攝10s後自動完成  setTimeout(function(){ cmr.stopVideoCapture();},10000);}</script></head><body></body></html>

CameraOption

JSON對象,調用攝像頭的參數

interfaceCameraOption{ attribute String filename; attribute String format; attribute String index; attribute PopPosition popover;}

屬性:

  • filename: (DOMString 類型 )拍照或攝像文件保存的路徑

    可設置具體文件名,也可只設置路徑,若是以「/」結尾則代表是路徑,如未設置文件名稱或設置的文件名衝突則文件名由程序程序自動生成。

  • format: (DOMString 類型 )拍照或攝像的文件格式

    可經過Camera對象的supportedImageFormats或supportedVideoFormats獲取,若是設置的參數無效則使用系統默認值。

  • index: (DOMString 類型 )拍照或攝像默認使用的攝像頭

    拍照或攝像界面默認使用的攝像頭編號,1表示主攝像頭,2表示輔攝像頭。

  • popover: (PopPosition 類型 )拍照或攝像界面彈出指示區域

    對於大屏幕設備如iPad,拍照或攝像界面爲彈出窗口,此時可經過此參數設置彈出窗口位置,其爲JSON對象,格式如{top:10,left:10,width:200,height:200},默認彈出位置爲屏幕居中。

PopPosition

JSON對象,彈出拍照或攝像界面指示位置

屬性:

  • top: (DOMString 類型 )指示區域距離容器頂部的距離

    彈出拍照或攝像窗口指示區域距離容器頂部的距離,支持像素值(如100px)和百分比(如50%)。

  • left: (DOMString 類型 )指示區域距離容器左側的距離

    彈出拍照或攝像窗口指示區域距離容器左側的距離,支持像素值(如100px)和百分比(如50%)。

  • width: (DOMString 類型 )指示區域的寬度

    彈出拍照或攝像窗口指示區域的寬度,支持像素值(如100px)和百分比(如50%)。

  • height: (DOMString 類型 )指示區域的高度

    彈出拍照或攝像窗口指示區域的高度,支持像素值(如100px)和百分比(如50%)。

CameraSuccessCallback

調用攝像頭操做成功回調

void onSuccess( capturedFile ){// Caputre image/video file code.}

說明:

調用攝像頭操做成功的回調函數,在拍照或攝像操做成功時調用,用於返回圖片或視頻文件的路徑。

參數:

  • capturedFile: ( DOMString ) 必選 拍照或攝像操做保存的文件路徑

返回值:

void : 無

平臺支持:

  • Android - 2.2+ (支持)
  • iOS - 4.3+ (支持)

CameraErrorCallback

攝像頭操做失敗回調

void onError( error ){// Handle camera error}

參數:

  • error: ( DOMException ) 必選 攝像頭操做的錯誤信息

返回值:

void : 無

平臺支持:

  • Android - 2.2+ (支持)
  • iOS - 4.3+ (支持)
相關文章
相關標籤/搜索