模块: img

相册,拍照,压缩图片,保存图片



capture(options)

进行拍照操作
摄像头资源为独占资源,如果其它程序或页面已经占用摄像头,再次操作则失败。 拍照操作成功将通过successCB返回拍照获取的图片路径。 可通过option设置摄像头的各种属性参数。

Parameters:
Name Type Description
options object

http://www.html5plus.org/doc/zh_cn/camera.html#plus.camera.CameraOption

Returns:
Type:
Promise
Example
$plus.img.capture({
 // 拍照或摄像文件保存的路径
 filename: '_doc/camera/'
}).then(file => {
 console.log(file)
}).catch(err => {
 console.log(err)
})


compress(options)

图片压缩转换
可用于图片的质量压缩、大小缩放、方向旋转、区域裁剪、格式转换等。

Parameters:
Name Type Description
options object

http://www.html5plus.org/doc/zh_cn/zip.html#plus.zip.CompressImageOptions

Returns:
Type:
Promise
Example
let name = file.substr(file.lastIndexOf('/') + 1)
$plus.img.compress({
 // 压缩转换原始图片的路径
 src: file,
 // 压缩转换目标图片的路径
 dst: '_doc/' + name,
 // 是否覆盖生成新文件
 overwrite: true,
 // 压缩图片的质量,取值范围为1-100,1表示使用最低的图片质量(转换后的图片文件最小)、100表示使用最高的图片质量(转换后的图片文件最大); 默认值为50。
 quality: 75,
 // 缩放图片的宽度,支持像素值(如"100px")、百分比(如"50%")、自动计算(如"auto",即根据height与源图高的缩放比例计算,若未设置height则使用源图高度); 默认值为"auto"。 注意:若设置了width属性值不合法(如"0px"),则不对图片进行缩放操作。
  width: 600,
 // 缩放图片的高度,支持像素值(如"100px")、百分比(如"50%")、自动计算(如"auto",即根据width与源图宽的缩放比例计算,若未设置width则使用源图高度); 默认值为"auto"。 注意:若设置了height属性值不合法(如"0px"),则不对图片进行缩放操作。
 height: 'auto'
}).then(zip => {
 // 图片路径
 console.log(zip.target)
}).catch(err => {
 console.log(err)
})


pick(options)

从系统相册选择文件(图片或视频)
从系统相册中选择图片或视频文件。每次仅能选择一个文件,选择后将返回选择的文件路径。

Parameters:
Name Type Description
options object

http://www.html5plus.org/doc/zh_cn/gallery.html#plus.gallery.GalleryOptions

Returns:
Type:
Promise
Example
$plus.img.pick({
 // 系统相册选择器中可选择的文件类型,可设置为仅选择图片文件(“image”)、视频文件(“video”)或所有文件(“none”),默认值为“image”
 filter: 'image',
 // 是否支持多选图片
 multiple: false,
 // 仅在支持多选时有效,取值范围为1到Infinity,默认值为Infinity,即不限制选择的图片数。 如果设置的值非法则使用默认值Infinity。
 maximum: 1
}).then(files => {
 // 文件数组
 console.log(files.length)
}).catch(err => {
 console.log(err)
})


save(path)

保存文件到系统相册中。
每次仅能保存一个文件,支持图片类型(jpg/jpeg、png、bmp等格式)和视频文件(3gp、mov等格式)。 若保存的文件系统不支持,则通过errorCB返回错误信息。

Parameters:
Name Type Description
path string

要保存到系统相册中的文件文件地址

Returns:
Type:
Promise
Example
$plus.img.save(path).then(file => {
 // 成功回调:www.html5plus.org/doc/zh_cn/gallery.html#plus.gallery.GallerySuccessCallback
}).catch(err => {
 // 失败回调:www.html5plus.org/doc/zh_cn/gallery.html#plus.gallery.GalleryErrorCallback
})