mosaic

来自于:AC模块工作室立即使用

open save clearCache

概述

mosaic模块封装了给图片添加马赛克的功能,支持手指涂抹加马赛克的效果以及直接使整个图片被打码的方式。

open

添加图片

open({params}, callback(ret))

params

rect:

  • 类型:JSON 对象
  • 描述:(可选项)图片的位置及尺寸
  • 内部字段:
  1. {
  2. x: 0, //(可选项)数字类型;模块左上角的 x 坐标(相对于所属的 Window 或 Frame);默认:0
  3. y: 0, //(可选项)数字类型;模块左上角的 y 坐标(相对于所属的 Window 或 Frame);默认:0
  4. w: 320, //(可选项)数字类型;模块的宽度;默认:所属的 Window 或 Frame 的宽度
  5. h: 220 //(可选项)数字类型;模块的高度;默认:220
  6. }

bgColor:

  • 类型:字符串
  • 描述:模块的背景颜色,支持rgb、rgba

path:

  • 类型:字符串
  • 描述:要编辑的图片的路径,要求本地路径(fs://、widget://)

contentMode:(IOS支持,Android此模块按图片比例自适应)

  • 类型:字符串
  • 描述:(可选项)图片填充模式
  • 默认值:’scaleToFill’
  • 取值范围:
    • scaleToFill(填充)
    • scaleAspectFit(适应)

isWholePicture:(IOS支持)

  • 类型:布尔
  • 描述:(可选项)是否是整张图片被马赛克,不需要手指涂抹
  • 默认值:false

fixedOn:

  • 类型:字符串
  • 描述:(可选项)模块视图添加到指定 frame 的名字(只指 frame,传 window 无效)
  • 默认:模块依附于当前 window

fixed:

  • 类型:布尔
  • 描述:(可选项)模块是否随所属 window 或 frame 滚动
  • 默认值:true(不随之滚动)

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true //布尔类型;是否打开成功
  3. }

示例代码

  1. var mosaic = api.require('mosaic');
  2. mosaic.open({
  3. rect: {
  4. x: 0,
  5. y: 0,
  6. w: api.frameWidth,
  7. h: 340
  8. },
  9. bgColor:'#fff',
  10. path:'widget://res/king.png',
  11. contentMode: 'scaleToFill',
  12. fixedOn: api.frameName,
  13. fixed:true
  14. }, function(ret) {
  15. if (ret.status) {
  16. alert('打开成功!');
  17. } else {
  18. alert('打开失败!');
  19. }
  20. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

save

保存编辑后的图片

save({params}, callback(ret))

params

path:

  • 类型:字符串类型
  • 描述:(可选项)保存图片路径,要求本地路径(fs://),注意图片后缀名输入完整。若不传或传空,则模块默认将图片保存到临时数据文件夹下

copyToAlbum:

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

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. realPath: //字符串类型;图片保存到指定路径后的绝对路径,若保存失败则该参数为 undefined
  3. albumPath: //字符串类型;图片保存到相册后的绝对路径,若保存失败则该参数为 undefined
  4. }

示例代码

  1. var mosaic = api.require('mosaic');
  2. mosaic.save({
  3. path: 'fs://Mosaic/result.png',
  4. copyToAlbum: false
  5. }, function(ret, err) {
  6. if (ret) {
  7. alert(JSON.stringify(ret));
  8. } else {
  9. alert(JSON.stringify(err));
  10. }
  11. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

clearCache

清除本模块产生的图片文件,本接口仅当 save -> path 参数不传或传空时有效,本接口只清除本模块产生的临时数据,若要清除本 app 缓存的所有数据则调用 api.clearCache

clearCache()

示例代码

  1. var mosaic = api.require('mosaic');
  2. mosaic.clearCache();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本