• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

小程序之上传图片压缩

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

在小程序中上传文件置媒体库中,可能考虑调用的流畅性,需要对视频镜像 压缩处理。

下面是我代码


index.html  页面只是一个简单的按钮选择



<view bindtap=\'aa\'>选择图片</view>
<canvas canvas-id="photo_canvas" style="width:{{canvasWidth}}px;height:{{canvasHeight}}px;position: absolute;left:-300px;top:-300px;"></canvas>
<!-- <view>
未压缩图片
<image style="width:{{canvasWidth2}}px;height:{{canvasHeight2}}px;" src=\'{{aaa}}\'></image>
</view>
<view>
压缩图片
<image style="width:{{canvasWidth}}px;height:{{canvasHeight}}px;" src=\'{{bbb}}\'></image>
</view> -->
<view bindtap=\'bb\'>选择视频</view>


index.js

Page({

/**
* 页面的初始数据
*/
data: {
},

/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
},
aa(){
var _this=this;
wx.chooseImage({
count: 1,
sizeType: [\'compressed\'],
success: function (photo) {
wx.getImageInfo({
src: photo.tempFilePaths[0],
success: function (res) {
var ctx = wx.createCanvasContext(\'photo_canvas\');
var ratio = 10;
var canvasWidth = res.width
var canvasHeight = res.height;
_this.setData({
aaa: photo.tempFilePaths[0],
canvasWidth2: res.width,
canvasHeight2: res.height
})
// 保证宽高均在200以内
while (canvasWidth > 200 || canvasHeight > 200) {
//比例取整
canvasWidth = Math.trunc(res.width / ratio)
canvasHeight = Math.trunc(res.height / ratio)
ratio++;
}
_this.setData({
canvasWidth: canvasWidth,
canvasHeight: canvasHeight
})//设置canvas尺寸
ctx.drawImage(photo.tempFilePaths[0], 0, 0, canvasWidth, canvasHeight) //将图片填充在canvas上
ctx.draw()
//下载canvas图片
setTimeout(function () {
wx.canvasToTempFilePath({
canvasId: \'photo_canvas\',
success: function (res) {
console.log(res.tempFilePath)
_this.setData({
bbb: res.tempFilePath
})
},
fail: function (error) {
console.log(error)
}
})
}, 100)
},
fail: function (error) {
console.log(error)
}
})

},
error: function (res) {
console.log(res);
}
})
},
bb(){
wx.chooseVideo({
compressed:true,
success(e){
console.log(e)
}
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},

/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},

/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},

/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},

/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},

/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},

/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
})


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
uniapp 开发小程序压缩图片发布时间:2022-07-18
下一篇:
垃圾分类小程序(1)——实现查找垃圾的类别发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap