为帮助用户更好更快的使用插件,论坛维护了一个示例,示例中包含示例代码、知识点讲解、注意事项等,供您参考。
imageEdit插件封装了图片的编辑功能,支持给图片上添加线条、矩形框、圆形框、文本和箭头。用户点击某个形状(矩形框、圆形框、文本和箭头,不包括线条)时,插件会自动动态调整这个形状的边框颜色、边框粗细(如果是文字,就是文字颜色和文字字体大小)。
注意:iOS实现图片的编辑功能是CoreGraphics绘图API,所以在使用save接口的时候使用了截图的API代码,所以在使用open接口的时候传入的图片大小和所设置区域大小尽可能使得图片能够填充整个区域,以及背景色的设置也要慎重,请尽量选择白色,以保证保存后的图片能够正常使用
添加图片
open({params}, callback(ret))
rect:
{
x: 0, //(可选项)数字类型;插件左上角的 x 坐标(相对于所属的 Window 或 Frame);默认:0
y: 0, //(可选项)数字类型;插件左上角的 y 坐标(相对于所属的 Window 或 Frame);默认:0
w: 320, //(可选项)数字类型;插件的宽度;默认:所属的 Window 或 Frame 的宽度
h: 220 //(可选项)数字类型;插件的高度;默认:220
}
bgColor:
path:
contentMode:
fixedOn:
fixed:
ret:
{
status: true //布尔类型;是否打开成功
}
var imageEdit = api.require('imageEdit');
imageEdit.open({
rect: {
x: 0,
y: 0,
w: api.frameWidth,
h: 340
},
bgColor:'#fff',
path:'widget://res/king.png',
contentMode: 'scaleToFill',
fixedOn: api.frameName,
fixed: false
}, function(ret) {
if (ret.status) {
alert('打开成功!');
} else {
alert('打开失败!');
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
设置画笔,用户点击某个形状(矩形框、圆形框、文本和箭头,不包括线条)时,插件会自动动态调整这个形状的边框颜色、边框粗细(如果是文字,就是文字颜色和文字字体大小)为当前画笔的样式。
setBrush({params})
color:
width:
type:
size:
var imageEdit = api.require('imageEdit');
imageEdit.setBrush({
color:'#f00',
width:12,
size:10,
type:'line',
});
iOS系统,Android系统
可提供的1.0.0及更高版本
添加监听事件
addEventListener({params}, callback(ret))
name:
ret:
{
brush: {
color: '#fff', // 画笔颜色
width: 1.0, // 画笔粗细
type: 'line', // 画笔类型
size: 12 // 尺寸
}
eventType: ‘starting’ //字符串类型;拖动事件类型,取值范围如下:
//starting:开始拖动
//dragging:拖动中
//ending:拖动结束(当用户拖动到本插件顶部高度为44区域时抬起拖动手势,插件认定为拖动结束事件)
//canceling:拖动取消(当用户未拖动到ending区域就抬起拖动手势的事件,插件认定为拖动取消事件)
}
var imageEdit = api.require('imageEdit');
imageEdit.addEventListener({
name:'click',
},function(ret, err) {
alert("用户单击了插件");
});;
iOS系统,Android系统
可提供的1.0.0及更高版本
保存编辑后的图片
save({params}, callback(ret))
path:
copyToAlbum:
ret:
{
realPath: //字符串类型;图片保存到指定路径后的绝对路径,若保存失败则该参数为 undefined
albumPath: //字符串类型;图片保存到相册后的绝对路径,若保存失败则该参数为 undefined
}
var imageEdit = api.require('imageEdit');
imageEdit.save({
path: 'fs://imageEdit/result.png',
copyToAlbum: false
}, function(ret, err) {
if (ret) {
api.alert({msg: JSON.stringify(ret)});
} else {
api.alert({msg: JSON.stringify(err)});
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
清除本插件产生的图片文件,本接口仅当 save -> path 参数不传或传空时有效,本接口只清除本插件产生的临时数据,若要清除本 app 缓存的所有数据则调用 api.clearCache
clearCache()
var imageEdit = api.require('imageEdit');
imageEdit.clearCache();
iOS系统,Android系统
可提供的1.0.0及更高版本
重新设置插件位置、尺寸
resetRect({params})
rect:
{
x: 0, //(可选项)数字类型;插件左上角的 x 坐标(相对于所属的 Window 或 Frame);默认:0
y: 0, //(可选项)数字类型;插件左上角的 y 坐标(相对于所属的 Window 或 Frame);默认:0
w: 320, //(可选项)数字类型;插件的宽度;默认:open中设置的宽度
h: 300 //(可选项)数字类型;插件的高度;默认:open中设置的高度
}
var imageEdit = api.require('imageEdit');
imageEdit.resetRect({
rect:{
x:0,
y:0,
w:320,
h:300
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本