


Teach you step by step how to use canvas+Painter plug-in to create QR code in WeChat mini program
Nov 04, 2021 am 10:47 AMThis article will introduce to you how to use the canvas Painter plug-in to create QR codes in the WeChat applet. I hope it will be helpful to you!
#In daily small program projects, we often encounter the need to dynamically draw QR codes. There are many usage scenarios, such as drawing on posters, making ticket codes, verification codes, etc.
This article was written in response to the needs of a friend, and I hope it can give some help to students in need.
1. Implementation Principle
Use the canvas component of the WeChat applet to draw, but this component is not very easy to use, so a third-party framework is used :Painter
Painter’s Github address: https://github.com/Kujiale-Mobile/Painter
Use your method to download this framework. There will be demonstration code in it. We Just take out the core code.
For an introduction to the use of the framework, you can go to github to browse. I will get started directly. [Related learning recommendations: 小program development tutorial]
2. Implementation code
Preliminary preparation
1. Create a new components folder and place the painter core code
painter.js code
export?default?class?LastMayday?{ ??palette(viewList)?{ ????return?( ??????viewList ????); ??} }3. Create a new drawing specific attribute information folder posterViewjs, and place information js such as the size and position of the drawing.
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 }
Implementation
Implement the page directory structure
<view>
??<image></image>
??<button>生成二維碼</button>
</view>
<!-- canvas隱藏 -->
<painter></painter>
<!-- canvas隱藏 -->
.qrcode-img{
??background-color:?#999999;
??height:?300rpx;
??width:?300rpx;
}
Please remember to reference the painter component on the page you are using
{ ??"usingComponents":?{ ????"painter":"/components/painter/painter" ??}, ??"navigationBarTitleText":?"繪制二維碼" }JS code
//?pages/makeQRCode/makeQRCode.js
import?poster?from?'../../palette/painter'
const?posterView?=?require("../../posterViewjs/posterView")
Page({
??/**
???*?頁面的初始數(shù)據(jù)
???*/
??data:?{
????imgUrl:?null,
????QRCodeText:?"2d44d6c26134f8a109df65897107089a2d44d6c26134f8a109df65897107089a",
????paintPallette:?'',
??},
??/**
???*?生命周期函數(shù)--監(jiān)聽頁面加載
???*/
??onLoad()?{
??},
??/**
???*?生命周期函數(shù)--監(jiān)聽頁面顯示
???*/
??onShow?()?{
??},
??/**?生成海報點擊監(jiān)聽?*/
??makeQRCodeTap()?{
????wx.showLoading({
??????title:?'獲取海報中',
??????mask:?true
????})
????//?繪制海報
????this.makePoster(this.data.QRCodeText)
??},
??/**?繪制完成后的回調(diào)函數(shù)*/
??onImgOK(res)?{
????wx.hideLoading()
????//?這個路徑就可以作為保存圖片時的資源路徑
????//?console.log("海報臨時路徑",?res.detail.path)
????this.setData({
??????imgUrl:?res.detail.path
????})
??},
??/**?生成海報?*/
??makePoster(qrcodeText)?{
????wx.showLoading({
??????title:?'生成海報中',
????})
????//?這是繪制海報所用到JSON數(shù)據(jù)
????const?viewList?=?posterView.getPosterView01(qrcodeText)
????this.setData({
??????paintPallette:?new?poster().palette(viewList)
????})
??},
??/**
???*?用戶點擊右上角分享
???*/
??onShareAppMessage()?{}
})
I will not write other logic in actual development. Students need to consider issues such as handling abnormal situations themselves.
The above are some of my experience summaries and insights during the development process. If there is anything incorrect, I hope the experts will correct it in the comment area.
This article is reproduced from: https://blog.csdn.net/weixin_44702572/article/details/120443998Introduction to ProgrammingAuthor: super--Yang
For more programming-related knowledge, please visit:
The above is the detailed content of Teach you step by step how to use canvas+Painter plug-in to create QR code in WeChat mini program. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undress AI Tool
Undress images for free

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

The login portal for the Douyin web version is https://www.douyin.com/. The login steps include: 1. Open the browser; 2. Enter the URL https://www.douyin.com/; 3. Click the "Login" button and select the login method; 4. Enter the account password; 5. Complete login. The web version provides functions such as browsing, searching, interaction, uploading videos and personal homepage management, and has advantages such as large-screen experience, multi-tasking, convenient account management and data statistics.

Copying comics is undoubtedly a treasure that cannot be missed. Here you can find basketball comics in various styles, from passionate and inspiring competitive stories to relaxed and humorous daily comedy. Whether you want to relive the classics or discover new works, copying comics can meet your needs. Through the authentic online reading portal provided by copy comics, you will bid farewell to the trouble of pirated resources, enjoy a high-definition and smooth reading experience, and can support your favorite comic authors and contribute to the development of authentic comics.

Choosing UC browser or QQ browser depends on your needs: 1. UC browser is suitable for users who pursue fast loading and rich entertainment functions; 2. QQ browser is suitable for users who need stability and seamless connection with Tencent products.

Combining the latest industry trends and multi-dimensional evaluation data in 2025, the following are the top ten comprehensive AI writing software recommendations, covering mainstream scenarios such as general creation, academic research, and commercial marketing, while taking into account Chinese optimization and localization services:

Nice Comics, an immersive reading experience platform dedicated to creating for comic lovers, brings together a large number of high-quality comic resources at home and abroad. It is not only a comic reading platform, but also a community that connects comic artists and readers and shares comic culture. Through simple and intuitive interface design and powerful search functions, NES Comics allows you to easily find your favorite works and enjoy a smooth and comfortable reading experience. Say goodbye to the long waiting and tedious operations, enter the world of Nice comics immediately and start your comic journey!

Frogman Comics has become the first choice for many comic lovers with its rich and diverse comic resources and convenient and smooth online reading experience. It is like a vibrant pond, with fresh and interesting stories constantly emerging, waiting for you to discover and explore. Frog Man comics cover a variety of subjects, from passionate adventures to sweet love, from fantasy and science fiction to suspense reasoning, no matter which genre you like, you can find your favorite works here. Its simple and intuitive interface design allows you to easily get started, quickly find the comics you want to read, and immerse yourself in the exciting comic world.

Here, you can enjoy the vast ocean of comics and explore works of various themes and styles, from passionate young man comics to delicate and moving girl comics, from suspenseful and brain-burning mystery comics to relaxed and funny daily comics, there is everything, and there is always one that can touch your heartstrings. We not only have a large amount of genuine comic resources, but also constantly introduce and update the latest works to ensure that you can read your favorite comics as soon as possible.

The latest official website of 2025b Announce is: https://www.marketwebb.co/zh-CN/join?ref=507720986&type=wenzi; Binance Exchange is a global cryptocurrency exchange that serves 180 countries and regions including North America, Europe, Taiwan, the Middle East, Hong Kong, and Malaysia. It provides more than 600 cryptocurrencies and has 270 million registered users worldwide.
