`
samwong
  • 浏览: 281955 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

PhoneGap API帮助文档翻译—Camera (摄像头) PhoneGap API帮助文档翻译—Camera (摄像头)

 
阅读更多

PhoneGap API帮助文档翻译—Camera (摄像头)

camera对象提供对设备默认摄像头应用程序的访问。
方法:
  • camera.getPicture
参数:
  • cameraSuccess
  • cameraError
  • cameraOptions

camera.getPicture
选择使用摄像头拍照,或从设备相册中获取一张照片。图片以base64编码的字符串或图片URI形式返回。

简单的范例:
说明:
camera.getPicture函数打开设备的默认摄像头应用程序,使用户可以拍照(如果 Camera.sourceType 设置为 Camera.PictureSourceType.CAMERA,这也是默认值)。一旦拍照结束,摄像头应用程序会关闭并恢复用户应用程序。
如果Camera.sourceType = Camera.PictureSourceType.PHOTOLIBRARY或Camera.PictureSourceType.SAVEDPHOTOALBUM,系统弹出照片选择对话框,用户可以从相集中选择照片。
返回值会按照用户通过cameraOptions参数所设定的下列格式之一发送给cameraSuccess回调函数:
  • 一个字符串,包含Base64编码的照片图像(默认情况)。
  • 一个字符串,表示在本地存储的图像文件位置
你可以对编码的图片或URI做任何处理,例如:
  • 通过标签渲染图片(参看后续范例)
  • 存储为本地数据(LocalStorage,Lawnchair*等)
  • 将数据发送到远程服务器
备注:较新的设备上使用摄像头拍摄的照片的质量是相当不错的,使用Base64对这些照片进行编码已导致其中的一些设备出现内存问题(如IPHONE4、BlackBerry Torch 9800)。因此,强烈建议将“Camera.destinationType”设为FILE_URI。
支持的平台:
  • Android
  • BlackBerry WebWorks (OS 5.0或更高版本)
  • iOS
简单的范例:
拍照并获取Base64编码的图像:
拍照并获取图像文件路径:
完整的范例:

提供图像数据的onSuccess回调函数。
参数:
  • imageData:根据cameraOptions的设定值,为Base64编码的图像数据或图像文件的URI。(字符串类型)
范例:

提供错误信息的onError回调函数。
参数:
  • message:设备本地代码提供的错误信息。(字符串类型)
定制摄像头设置的可选参数。
选项:
  • quality:存储图像的质量,范围是[0,100]。(数字类型)
  • destinationType:选择返回数据的格式。通过navigator.camera.DestinationType进行定义。(数字类型)
  • sourceType:设定图片来源。通过nagivator.camera.PictureSourceType进行定义。(数字类型)
  • allowEdit:在选择图片进行操作之前允许对其进行简单编辑。(布尔类型)
  • EncodingType:选择返回图像文件的编码方式,通过navigator.camera.EncodingType进行定义。(数字类型)
  • targetWidth:以像素为单位的图像缩放宽度,必须和targetHeight同时使用。相应的宽高比保持不变。(数字类型)
  • targetHeight:以像素为单位的图像缩放高度,必须和targetWidth同时使用。相应的宽高比保持不变。(数字类型)
Android的特异情况:
  • 忽略allowEdit参数。
  • Camera.PictureSourceType.PHOTOLIBRARY 或 Camera.PictureSourceType.SAVEDPHOTOALBUM 都会显示同一个相集。
  • Camera.EncodingType不被支持。
BlackBerry的特异情况:
  • 忽略quality参数。
  • 忽略sourceType参数。
  • 忽略allowEdit参数。
  • 当拍照结束后,应用程序必须有按键注入权限才能关闭本地Camera应用程序。
  • 使用大图像尺寸,可能会导致新近带有高分辨率摄像头的型号设备无法对图像进行编码(如:Torch 9800)。
Palm的特异情况:
  • 忽略quality参数。
  • 忽略sourceType参数。
  • 忽略allowEdit参数。
iPhone的特异情况:
  • 为了避免部分设备上出现内存错误,quality的设定值要低于50。
  • 当使用destinationType.FILE_URI时,使用摄像头拍摄的和编辑过的照片会存储到应用程序的Documents/tmp目录。
  • 应用程序结束的时候,应用程序的Documents/tmp目录会被删除。如果存储空间大小非常关键的时候,开发者也可以通过navigator.fileMgr的接口来删除该目录。


camera对象提供对设备默认摄像头应用程序的访问。
方法:
  • camera.getPicture
参数:
  • cameraSuccess
  • cameraError
  • cameraOptions

camera.getPicture
选择使用摄像头拍照,或从设备相册中获取一张照片。图片以base64编码的字符串或图片URI形式返回。

简单的范例:
说明:
camera.getPicture函数打开设备的默认摄像头应用程序,使用户可以拍照(如果 Camera.sourceType 设置为 Camera.PictureSourceType.CAMERA,这也是默认值)。一旦拍照结束,摄像头应用程序会关闭并恢复用户应用程序。
如果Camera.sourceType = Camera.PictureSourceType.PHOTOLIBRARY或Camera.PictureSourceType.SAVEDPHOTOALBUM,系统弹出照片选择对话框,用户可以从相集中选择照片。
返回值会按照用户通过cameraOptions参数所设定的下列格式之一发送给cameraSuccess回调函数:
  • 一个字符串,包含Base64编码的照片图像(默认情况)。
  • 一个字符串,表示在本地存储的图像文件位置
你可以对编码的图片或URI做任何处理,例如:
  • 通过标签渲染图片(参看后续范例)
  • 存储为本地数据(LocalStorage,Lawnchair*等)
  • 将数据发送到远程服务器
备注:较新的设备上使用摄像头拍摄的照片的质量是相当不错的,使用Base64对这些照片进行编码已导致其中的一些设备出现内存问题(如IPHONE4、BlackBerry Torch 9800)。因此,强烈建议将“Camera.destinationType”设为FILE_URI。
支持的平台:
  • Android
  • BlackBerry WebWorks (OS 5.0或更高版本)
  • iOS
简单的范例:
拍照并获取Base64编码的图像:
拍照并获取图像文件路径:
完整的范例:

提供图像数据的onSuccess回调函数。
参数:
  • imageData:根据cameraOptions的设定值,为Base64编码的图像数据或图像文件的URI。(字符串类型)
范例:

提供错误信息的onError回调函数。
参数:
  • message:设备本地代码提供的错误信息。(字符串类型)
定制摄像头设置的可选参数。
选项:
  • quality:存储图像的质量,范围是[0,100]。(数字类型)
  • destinationType:选择返回数据的格式。通过navigator.camera.DestinationType进行定义。(数字类型)
  • sourceType:设定图片来源。通过nagivator.camera.PictureSourceType进行定义。(数字类型)
  • allowEdit:在选择图片进行操作之前允许对其进行简单编辑。(布尔类型)
  • EncodingType:选择返回图像文件的编码方式,通过navigator.camera.EncodingType进行定义。(数字类型)
  • targetWidth:以像素为单位的图像缩放宽度,必须和targetHeight同时使用。相应的宽高比保持不变。(数字类型)
  • targetHeight:以像素为单位的图像缩放高度,必须和targetWidth同时使用。相应的宽高比保持不变。(数字类型)
Android的特异情况:
  • 忽略allowEdit参数。
  • Camera.PictureSourceType.PHOTOLIBRARY 或 Camera.PictureSourceType.SAVEDPHOTOALBUM 都会显示同一个相集。
  • Camera.EncodingType不被支持。
BlackBerry的特异情况:
  • 忽略quality参数。
  • 忽略sourceType参数。
  • 忽略allowEdit参数。
  • 当拍照结束后,应用程序必须有按键注入权限才能关闭本地Camera应用程序。
  • 使用大图像尺寸,可能会导致新近带有高分辨率摄像头的型号设备无法对图像进行编码(如:Torch 9800)。
Palm的特异情况:
  • 忽略quality参数。
  • 忽略sourceType参数。
  • 忽略allowEdit参数。
iPhone的特异情况:
  • 为了避免部分设备上出现内存错误,quality的设定值要低于50。
  • 当使用destinationType.FILE_URI时,使用摄像头拍摄的和编辑过的照片会存储到应用程序的Documents/tmp目录。
  • 应用程序结束的时候,应用程序的Documents/tmp目录会被删除。如果存储空间大小非常关键的时候,开发者也可以通过navigator.fileMgr的接口来删除该目录。


分享到:
评论

相关推荐

    PhoneGap,API帮助文档翻译整理2-Camera(相机)

    PhoneGap,API帮助文档翻译整理2-Camera(相机)

    Android+ionic +phonegap 调用摄像头 $cordovaCamera

    Android+ionic +phonegap 调用摄像头 $cordovaCamera; 在Android上运行,ionic打包到assetc目录;上传一个实例,是phonegap100,树根老师讲的例子+自己写了调用摄像头的案例,给各位学习。以后还会添加功能,继续...

    PhoneGap - API 中文说明

    PhoneGap - API 中文说明 Accelerometer 加速度计 Camera 相机 Capture 捕捉 Compass 指南针 Contacts 联系人 Device 设备 Events 活动 File 文件 Geolocation 地理位置 Media 媒体 Network 网络 Notification 通知...

    PhoneGap - API 中文说明.rar )

    PhoneGap - API 中文说明 Accelerometer 加速度计 Camera 相机 Capture 捕捉 Compass 指南针 Contacts 联系人 Device 设备 Events 活动 File 文件 Geolocation 地理位置 Media 媒体 Network 网络 Notification 通知...

    phonegap-camera:phonegap 相机 api 的简单包装器

    手机摄像头phonegap 相机 api 的简单包装器。安装 $ component install matthewmueller/phonegap-camera例子 camera = new Camera ;// capture a photocamera . capture ( function ( err , str ) { if ( err ) ...

    PhoneGap Camera插件调用 Demo下载

    自己写的一个PhoneGap Camera插件调用 Demo,实现拍照/图库获取图片功能,编译通过~~~具体实现我博客里面有

    phonegap相机android

    phonegap相机android 此篇文章以cordova 3.3版本编写 据我总结核心步骤: 创建工程 ; 下载插件 ;编译工程; 调用插件; 按照如下步骤就能生产出代码: 打开cmd 控制台 1 使用命令行 建立phonegap工程 2 ...

    phonegap 配置文件(android+eclipse+phonegap(cordova)配置项目 .)

    <uses-permission android:name="android.permission.CAMERA" /> <uses-permission android:name="android.permission.WRITE_CONTACTS" /> ...

    《Apress Beginning PhoneGap》源码

    《Apress Beginning PhoneGap》 源码 PhoneGap-Accelerometer PhoneGap-Accelerometer-Image PhoneGap-Android-GWT-Hellworld PhoneGap-Camera PhoneGap-Compass PhoneGap-DeviceInfo 等

    com.phonegap.employeesearch:phonegap-员工搜索应用

    如何使用几个PhoneGap API,例如Geolocation,Contacts和Camera。 如何处理特定的移动问题,例如触摸事件,滚动,样式,页面转换等。 如何使用单页体系结构和HTML模板构建应用程序。 如何使用PhoneGap Build构建...

    PhoneGap.3.Beginners.Guide.3rd.Edition.1784392286

    Create, develop, debug, and deploy your very own mobile applications with PhoneGap About This Book Build hybrid mobile applications with PhoneGap/Cordova using HTML, CSS and JavaScript Optimize and ...

    phonegap:PhoneGap工作页面

    如何使用几个PhoneGap API,例如Geolocation,Contacts和Camera。 如何处理特定的移动问题,例如触摸事件,滚动,样式,页面转换等。 如何使用单页体系结构和HTML模板构建应用程序。 如何使用PhoneGap Build构建...

    phonegap_workshop:phonegap教程

    如何使用多种 PhoneGap API,例如 Geolocation、Contacts 和 Camera。 如何处理特定的移动问题,例如触摸事件、滚动、样式、页面转换等。 如何使用单页架构和 HTML 模板构建应用程序。 如何使用 PhoneGap Build 为 ...

    FunWithPhoneGap:我喜欢 PhoneGap。 你喜欢PhoneGap。 我们都喜欢 PhoneGap

    如何使用多种 PhoneGap API,例如 Geolocation、Contacts 和 Camera。 如何处理特定的移动问题,例如触摸事件、滚动、样式、页面转换等。 如何使用单页架构和 HTML 模板构建应用程序。 如何使用 PhoneGap Build ...

    PhoneGap.Essentials

    You'll discover how to use PhoneGap to create an application view, along with how to use a camera, geolocation, and other device capabilities to create engaging apps. Next, you'll augment applications...

    Phonegap-Hallo:测试 Phonegap 和 Git

    如何使用多种 PhoneGap API,例如 Geolocation、Contacts 和 Camera。 如何处理特定的移动问题,例如触摸事件、滚动、样式、页面转换等。 如何使用单页架构和 HTML 模板构建应用程序。 如何使用 PhoneGap Build ...

    PhoneGap-Initial-App:PhoneGap InitialApp

    如何使用多种 PhoneGap API,例如 Geolocation、Contacts 和 Camera。 如何处理特定的移动问题,例如触摸事件、滚动、样式、页面转换等。 如何使用单页架构和 HTML 模板构建应用程序。 如何使用 PhoneGap Build ...

    phonegap-workshop:来自 http 的 PhoneGap 教程

    如何使用多种 PhoneGap API,例如 Geolocation、Contacts 和 Camera。 如何处理特定的移动问题,例如触摸事件、滚动、样式、页面转换等。 如何使用单页架构和 HTML 模板构建应用程序。 如何使用 PhoneGap Build ...

    phonegap-tutorial:phonegap-workshop-master

    如何使用多种 PhoneGap API,例如 Geolocation、Contacts 和 Camera。 如何处理特定的移动问题,例如触摸事件、滚动、样式、页面转换等。 如何使用单页架构和 HTML 模板构建应用程序。 如何使用 PhoneGap Build ...

    oPath的Android 2.1 PhoneGap 2.0.0 移植版本

    TypeError: Result of expression "navigator.camera" is not an object 答案: 有可能是 PhoneGap 没有被正确装载或者完全装载你就调用了。 错误查下来原来是path.html里面原来是 [removed] 修改为 [removed] ...

Global site tag (gtag.js) - Google Analytics