




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
【移动应用开发技术】在微信小程序中怎么使用canvas+Painter插件制作二维码
本篇内容介绍了“在微信小程序中怎么使用canvas+Painter插件制作二维码”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让在下带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、实现原理使用微信小程序的canvas组件进行绘制,但是在该组件用起来并不是很顺手,所以使用了第三方的框架:Painter用你的方法,把这个框架下载下来,里面会有示范代码,我们只需要把其中的核心代码拿出来就行。二、实现代码前期准备1、新建components文件夹,放置painter核心代码2、新建palette文件夹,放置绘制实现代码painter.js代码export
default
class
LastMayday
{
palette(viewList)
{
return
(
viewList
);
}
}3、新建绘制的具体属性信息文件夹posterViewjs,放置例如绘制的大小、位置等信息js。二维码绘制属性信息js代码const
getPosterView01
=
(qrcodeText)
=>
{
const
poster01
=
{
"width":
"256px",
"height":
"256px",
"background":
"#f8f8f8",
"views":
[{
"type":
"qrcode",
"content":
qrcodeText,
"css":
{
"color":
"#000000",
"background":
"#ffffff",
"width":
"256px",
"height":
"256px",
"top":
"0px",
"left":
"0px",
"rotate":
"0",
"borderRadius":
"0px"
}
}]
}
return
poster01
}
module.exports
=
{
getPosterView01:
getPosterView01
}实现实现页面目录结构wxml代码<view
class="flex-jc-ac-col"
style="margin-top:
200rpx;">
<image
class="qrcode-img"
src="{{imgUrl?imgUrl:''}}"
mode="widthFix"></image>
<button
type="primary"
style="margin-top:
105rpx;"
bindtap="makeQRCodeTap">生成二维码</button>
</view>
<!--
canvas隐藏
-->
<painter
customStyle='position:
absolute;
left:
-9999rpx;'
customActionStyle="{{customActionStyle}}"
dancePalette="{{template}}"
palette="{{paintPallette}}"
bind:imgOK="onImgOK"
bind:touchEnd="touchEnd"
action="{{action}}"
use2D="{{true}}"
widthPixels="720"
/>
<!--
canvas隐藏
-->wxss代码.qrcode-img{
background-color:
#999999;
height:
300rpx;
width:
300rpx;
}json代码注意记得在使用的页面引用painter组件{
"usingComponents":
{
"painter":"/components/painter/painter"
},
"navigationBarTitleText":
"绘制二维码"
}JS代码//
pages/makeQRCode/makeQRCode.js
import
poster
from
'../../palette/painter'
const
posterView
=
require("../../posterViewjs/posterView")
Page({
/**
*
页面的初始数据
*/
data:
{
imgUrl:
null,
QRCodeText:
"2d44d6c26134f8a109df65897107089a2d44d6c26134f8a109df65897107089a",
paintPallette:
'',
},
/**
*
生命周期函数--监听页面加载
*/
onLoad()
{
},
/**
*
生命周期函数--监听页面显示
*/
onShow
()
{
},
/**
生成海报点击监听
*/
makeQRCodeTap()
{
wx.showLoading({
title:
'获取海报中',
mask:
true
})
//
绘制海报
this.makePoster(this.data.QRCodeText)
},
/**
绘制完成后的回调函数*/
onImgOK(res)
{
wx.hideLoading()
//
这个路径就可以作为保存图片时的资源路径
//
console.log("海报临时路径",
res.detail.path)
this.setData({
imgUrl:
res.detail.path
})
},
/**
生成海报
*/
makePoster(qrcodeText)
{
wx.showLoading({
title:
'生成海报中',
})
//
这是绘制海报所用到JSON数据
const
viewList
=
posterView.getPosterView01(qrcodeTe
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 宁夏2025自考工商管理国际贸易理论与实务选择题专练
- 黑龙江2025自考视觉传达设计马克思概论考前冲刺练习题
- 山西2025自考市场营销商品流通概论案例题专练
- 四川2025自考区域国别研究概论主观题专练
- 江西2025自考护理学计算机应用基础高频题考点
- 云南2025自考计算机科学计算机系统结构选择题专练
- 突触连接动态变化-洞察与解读
- 安徽2025自考舞蹈治疗英语二易错题专练
- 河南2025自考低空技术低空飞行原理主观题专练
- 内蒙古2025自考英语马克思概论案例题专练
- GB/T 44971-2024土壤硒含量等级
- 2024年团校考试入团考试测试题库及答案
- 甲状腺手术体位的综合征
- JJF 2140-2024压力表校验器测试方法
- 2024年黑龙江省哈尔滨市中考数学试卷
- 2024义务教育英语新课标课程标准2022年版考试真题附答案
- 医院检验科实验室生物安全程序文件SOP
- (2024年)培训机构架构图11则
- 学生心理健康一人一档、一人一案表
- 小米全屋智能方案
- JCT2158-2012 渗透型液体硬化剂
评论
0/150
提交评论