canvas.totempfilepath(object object)
基础库 或更高版本; 且 支付宝客户端 10.2.38 或更高版本; 若版本较低,建议采取 兼容处理 。
支小宝客户端 支持
安诊儿客户端 支持
小程序开发者工具: 不支持。请以真机调试结果为准。
主体: 企业支付宝小程序 、 个人支付宝小程序
把当前画布指定区域保存为图片。
object object
查看示例
属性 | 类型 | 默认值 | 必填 | 描述 | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
x | number | - | 否 | 指定的画布区域的左上角横坐标 |
||||||||||
y | number | - | 否 | 指定的画布区域的左上角纵坐标 |
||||||||||
width | number | - | 否 | 指定的画布区域的宽度 |
||||||||||
height | number | - | 否 | 指定的画布区域的高度 |
||||||||||
destwidth | number | - | 否 | 输出的图片的宽度 |
||||||||||
destheight | number | - | 否 | 输出的图片的高度 |
||||||||||
filetype | string | png | 否 | 目标文件的类型 |
||||||||||
|
||||||||||||||
quality | number | - | 否 | 图片的质量,目前仅对 jpg 有效。取值范围为 (0, 1],不在范围内时当作 1 处理 |
||||||||||
success | function | - | 否 | 调用成功的回调函数 |
||||||||||
fail | function | - | 否 | 调用失败的回调函数 |
||||||||||
complete | function | - | 否 | 调用结束的回调函数(调用成功、失败都会执行) |
success 回调函数
参数
object res
查看示例
属性 | 类型 | 描述 |
---|---|---|
tempfilepath | string | 保存所得的图片文件路径。本地临时文件 |
page({
oncanvasready() {
my.createselectorquery().select('#canvas').node().exec((res) => {
const canvas = res[0].node
var ctx = canvas.getcontext('2d')
let img = canvas.createimage()
img.src = "https://mdn.alipayobjects.com/huamei_esgcm9/afts/img/a*ouykq5wgy-aaaaaaaaaaaaaadsajaq/original"
img.onload = function () {
ctx.drawimage(img, 0, 0)
canvas.totempfilepath({
x: 10,
y: 10,
width: 200,
height: 150,
destwidth: 400,
destheight: 300,
success(res) {
console.log(res)
},
})
}
})
}
})
<canvas id="canvas" type="2d" onready="oncanvasready">canvas>
-
tip真机中保存图片后返回的文件扩展名为 .image,而非图片真实扩展名。若需判断文件真实扩展名,可使用 my.detectfiletype。
q:success 回调得到的 tempfilepath 如何使用?
一般可通过 my.saveimagetophotosalbum 将图片保存到系统相册,或通过 my.uploadfile 上传到服务端。所有可接受本地临时文件路径的接口 以及 filesystemmanager 都可以使用它。