普通注册 - 普通登录
开源之家-免费素材_软件_模板_源码下载-更快的站长下载站

开源之家-免费素材_软件_模板_源码下载-更快的站长下载站

微信小程序实现身份证取景框拍摄

时间:2020-09-09 18:36 [[其它教程]] 作者:开源之家 浏览:

本文实例为大家分享了微信小程序实现身份证取景框拍摄的具体代码,供大家参考,具体内容如下

wxml

<view class="camera_box">
<camera class="camera" wx:if="{{!show}}" device-position="back" flash="off"binderror="error">
<cover-view class="id_m">
<cover-image class="img" src="https://cdn.ctoku.com/201910234221235312.png"></cover-image>
</cover-view>
</camera>
<image class="camera_img" src="{{src}}" wx:if="{{show}}"></image>
<view class="action">
<button class="takeBtn" type="primary" bindtap="takePhoto" wx:if="{{!show}}"></button>
<button class="saveImg" type="primary" bindtap="saveImg" wx:if="{{show}}"></button>
<button class="cancelBtn" wx:if="{{show}}" type="primary" bindtap="cancelBtn"></button>
</view>
</view>

wxss

.camera_box {
height: 100vh; width: 100vw;
position: relative;
}
.camera {
height: 85vh; width: 100vw;
z-index: 1;
}
.id_m {
height: 85vh; width: 100vw;
z-index: 999;
background: rgba(0, 0, 0, 0.1);
display: flex;
position: absolute;
}
.id_m .img {
width: 550rpx;
height: 900rpx;
display: block;
position: absolute;
left: 0; right: 0; margin: auto auto;
top: 0; bottom: 0;
}
.id_m .tips_txt {
transform:rotate(90deg);
}
.camera_box .action {
height: 15vh;
position: relative;
display: flex;
justify-content: space-around;
align-items: center;
}
.camera_box .takeBtn {
height: 120rpx; width: 120rpx; border-radius: 50%;
font-size: 24rpx;
background: url('https://cdn.ctoku.com/1123123123123e3241.png') no-repeat center;
background-size: contain;
border: none;
}
.camera_box .cancelBtn {
font-size: 24rpx;
height: 120rpx; width: 120rpx; border-radius: 50%;
background: url('https://cdn.ctoku.com/12311123342312231.png') no-repeat center;
background-size: contain;
border: none;
}
.camera_box .saveImg {
background: url('https://cdn.ctoku.com/1232123434231231231.png') no-repeat center;
font-size: 24rpx;
height: 120rpx; width: 120rpx; border-radius: 50%;
background-size: contain;
border: none;
}
.camera_box .takeBtn::after {
border: none;
}
 
.camera_img {
height: 85vh; width: 100%;
}

js

Page({
 
/**
* 页面的初始数据
*/
data: {
src: '',
show: false
},
cancelBtn () {
this.setData({show: false})
},
saveImg () {
wx.showModal({
title: '图片地址',
content: this.data.src,
})
},
takePhoto() {
const ctx = wx.createCameraContext()
const listener = ctx.onCameraFrame((frame) => {
console.log(frame)
})
ctx.takePhoto({
quality: 'high',
success: (res) => {
console.log(res)
this.setData({
src: res.tempImagePath,
show: true
})
listener.stop({
success: (res) => {
console.log(res)
},
fail: (err) =>{
console.log(err)
}
})
},
fail: (err) => {
console.log(err)
}
})
},
error(e) {
console.log(e.detail)
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
},
 
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
 
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
 
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
 
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
 
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
 
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
 
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
})

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

转载请注明来源: 微信小程序实现身份证取景框拍摄

本文永久链接地址: https://www.enboo.cn/CMSjiaocheng/qitajiaocheng/21497.html

文本标签:微信小程序

郑重声明:
本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。
若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。 我们不承担任何技术及版权问题,且不对任何资源负法律责任。
如无法链接失效或侵犯版权,请给我们来信:2225329841@qq.com