imageFilter

来自于:官方立即使用

open filter save compress getAttr

概述

imageFilter模块封装了对图片按照指定效果过滤的功能,过滤后的图片可保存到指定目录

图片说明

open

打开图片过滤器

open ({params}, callback(ret, err))

params

imgPath:

  • 类型:字符串
  • 默认值:无
  • 描述:原图片路径,支持fs,widget等本地协议

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status: //操作成功状态值
  3. id: //打开图片对象的id
  4. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. code: //错误描述,取值范围如下:
  3. -1 //未知错误
  4. 0 //imgPath为空
  5. 1 //imgPath路径下的图片不存在
  6. 2 //图片读取失败
  7. 3
  8. }

示例代码

  1. var imageFilter = api.require('imageFilter');
  2. imageFilter.open({
  3. imgPath: 'widget://res/img/apicloud.png'
  4. },function( ret, err ){
  5. if( ret.status ){
  6. alert( JSON.stringify( ret ) );
  7. }else{
  8. alert( JSON.stringify( err ) );
  9. }
  10. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

filter

设置图片滤镜效果

filter({params}, callback(ret, err))

params

type:

  • 类型:字符串
  • 默认值:default
  • 描述:(可选项)要设置的图片滤镜效果,详情参考滤镜效果

value:

  • 类型:数字类型
  • 默认值:60
  • 描述:(可选项)要设置的图片滤镜效果程度,取值范围1-100

id:

  • 类型:数字类型
  • 默认值:无
  • 描述:要操作的图片的id

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status: //操作成功状态值
  3. path: //初步滤镜后的缩略图图片路径,字符串类型缩略图大小为50*50
  4. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. code: //错误描述,取值范围如下:
  3. -1: //未知错误
  4. 0 //type不支持
  5. 1 //value非法
  6. 2 //id不存在
  7. }

示例代码

  1. var imageFilter = api.require('imageFilter');
  2. imageFilter.filter({
  3. id: 1,
  4. type: 'autumn'
  5. },function( ret, err ){
  6. if( ret.status ){
  7. alert( JSON.stringify( ret ) );
  8. }else{
  9. alert( JSON.stringify( err ) );
  10. }
  11. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

save

保存最终处理结果

save({params}, callback(ret, err))

params

album:

  • 类型:布尔类型
  • 默认值:false
  • 描述:(可选项)是否保存到系统相册

imgPath:

  • 类型:字符串类型
  • 默认值:无
  • 描述:(可选项)保存的图片路径,若路径不存在文件夹则创建此目录
  • 备注:不传或传空则不保存

imgName:

  • 类型:字符串类型
  • 默认值:无
  • 描述:(可选项)保存的图片名字,支持png和jpg格式,若不指定格式,则默认png
  • 备注:不传或传空则不保存

id:

  • 类型:数字类型
  • 默认值:无
  • 描述:要操作的图片的id

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status: //操作成功状态值
  3. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. code: //错误描述,取值范围如下:
  3. -1://未知错误
  4. 0//保存到相册失败,无权限访问系统相册
  5. 1//保存到指定路径失败,无指定保存路径
  6. 2//id不存在
  7. }

示例代码

  1. var imageFilter = api.require('imageFilter');
  2. imageFilter.save(function( ret, err ){
  3. if( ret.status ){
  4. alert( JSON.stringify( ret ) );
  5. }else{
  6. alert( JSON.stringify( err ) );
  7. }
  8. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

compress

图片压缩处理

compress({params}, callback(ret, err))

params

img:

  • 类型:字符串
  • 默认值:无
  • 描述:要压缩图片的路径,支持widget、fs等本地路径

isClarityimg:

  • 类型:布尔类型
  • 默认值:false
  • 描述:(可选项) 图片背景是否透明 仅支持iOS

quality:

  • 类型:数字
  • 默认值:0.5
  • 描述:(可选项)压缩程度,取值范围:0-1,当isClarityimg参数为false时有效

scale:

  • 类型:数字
  • 默认值:1
  • 描述:(可选项)压缩后的图片缩放比例,取值范围大于0,
  • 备注:若size参数有值,则忽略本参数

size:

  • 类型:json对象
  • 默认值:无
  • 描述:(可选项)压缩后的图片的大小
  • 备注:若本参数有值,则忽略scale
  • 内部字段:
  1. {
  2. w //压缩后的图片的宽,数字类型,无默认值
  3. h: //压缩后的图片的高,数字类型,无默认值
  4. }

save:

  • 类型:json对象
  • 默认值:见内部字段
  • 描述:(可选项)压缩后的图片保存位置
  • 内部字段:
  1. {
  2. album: //(可选项)布尔值,是否保存到系统相册,默认false
  3. imgPath: //(可选项)保存的文件路径,字符串类型,无默认值,不传或传空则不保存,若路径不存在文件夹则创建此目录
  4. imgName: //(可选项)保存的图片名字,支持png和jpg格式,若不指定格式,则默认png,字符串类型,无默认值,不传或传空则不保存
  5. }

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status: //操作成功状态值
  3. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. code: //错误描述,取值范围如下:
  3. -1://未知错误
  4. 0// 保存到相册失败
  5. 1// 保存到指定路径失败
  6. 2// 保存到相册和指定路径失败
  7. 3: // 压缩图片路径不存在
  8. }

示例代码

  1. var imageFilter = api.require('imageFilter');
  2. imageFilter.compress({
  3. img: 'widget://res/img/apicloud.png',
  4. quality: 0.1
  5. },function( ret, err ){
  6. if( ret.status ){
  7. alert( JSON.stringify( ret ) );
  8. }else{
  9. alert( JSON.stringify( err ) );
  10. }
  11. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

getAttr

获取指定路径下的图片信息

getAttr({params}, callback(ret, err))

params

path:

  • 类型:字符串
  • 描述:目标图片的路径,支持fs等本地路径

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status: //布尔类型;操作成功状态值
  3. width: //数字类型;获取的图片的宽
  4. height: //数字类型;获取的图片的高
  5. size: //数字类型;获取的图片文件的大小,单位:byte
  6. }

示例代码

  1. var imageFilter = api.require('imageFilter');
  2. imageFilter.getAttr({
  3. path: 'widget://res/img/apicloud.png'
  4. },function( ret, err ){
  5. if( ret.status ){
  6. alert( JSON.stringify( ret ) );
  7. }else{
  8. alert( JSON.stringify( err ) );
  9. }
  10. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

滤镜效果

图片过滤的效果类型。字符串类型

取值范围:

  • black_white //黑白
  • blur //模糊
  • default //原图效果

android特有效果:

  • color_pencil //
  • dream //
  • engrave //
  • film //
  • fresh //
  • rainbow //

ios特有效果:

  • emerald //绿宝石(无value)
  • bright //光亮(无value)
  • color_pencil //彩色
  • dream //梦幻
  • autumn //秋色
  • film //电影
  • lemo //柠檬
  • ancient //复古
  • gothic //哥特
  • sharpColor //锐色
  • elegant //淡雅
  • redWine //酒红
  • lime //青柠
  • romantic //浪漫
  • halo //光晕
  • blues //蓝调
  • nightScene //夜色