


Membawa anda langkah demi langkah untuk melaksanakan program kecil untuk membuat bingkai avatar untuk Tahun Harimau (Amalan)
Jan 19, 2022 am 10:29 AMFestival Musim Bunga Tahun Harimau akan datang tidak lama lagi. Bagaimana untuk menambah bingkai avatar Tahun Harimau pada gambar Artikel berikut akan menunjukkan kepada anda cara membuat program kecil untuk merealisasikan fungsi ini membantu anda!
Ini adalah penghujung tahun yang lain. Rasanya masa berlalu begitu cepat. Satu tahun berlalu dengan sekelip mata.
Saya masih ingat bahawa saya tidak pulang ke rumah untuk menyambut Tahun Baru tahun lepas kerana wabak pada malam Malam Tahun Baru, saya menyiarkan program kecil dalam kumpulan WeChat keluarga untuk mendapatkan sampul merah oleh. bermain permainan juga sangat gembira.
Walaupun saya tidak pernah membangunkan permainan mini sendiri, saya telah menulis beberapa program mini Baru-baru ini, saya telah melihat ramai rakan menukar avatar Tahun Baru mereka. Sama seperti berikut:
Selepas melihatnya, terdapat dua bahagian utama: gambar, bingkai foto, tindanan dan simpan sebagai satu gambar, maka saya juga boleh melaksanakannya.
Oleh itu artikel ini, applet bingkai avatar Tahun Harimau buatan sendiri.
Pencapaian
Tanpa berlengah lagi, mari mulakan dengan rendering.
1. Prinsip pelaksanaan
Seperti yang anda boleh lihat daripada rendering, dua kaedah digunakan di sini Gambar:
Salah satunya ialah avatar pengguna WeChat yang diperoleh melalui butang "Dapatkan Avatar", digunakan sebagai imej asas
Yang lain ialah imej bingkai foto, yang merupakan pra- membuat sumber statik;
Apabila anda mengklik "Simpan Avatar", lukis dua gambar di atas ke papan lukisan melalui kanvas Mula-mula lukis gambar asas, dan kemudian lukis gambar bingkai gambar di papan lukisan secara tempatan.
Langkah pelaksanaan khusus akan diperkenalkan di bawah.
2 Kumpul sumber statik
Saya mempunyai beberapa sumber statik terbina dalam program kecil ini contoh: gambar bingkai avatar, gambar latar belakang halaman utama, ikon bar navigasi bawah, dsb.
Gambar-gambar ini adalah dari laman web berikut dan hanya untuk rujukan.
Vektor AlibabaPerpustakaan Ikon
https://www.iconfont.cn/
Tempat yang bagus untuk mendapatkan ikon .
Qiantu.com
https://www.58pic.com/
Tempat yang bagus untuk mendapatkan gambar latar belakang, bingkai avatar, dsb.
3. Pengekodan
Fasa pengekodan diperkenalkan dalam tiga bahagian.
3.1 Mendapatkan avatar pengguna WeChat
Aplet WeChat menyediakan API untuk mendapatkan maklumat pengguna WeChat. wx.getUserProfile(Object object)
Klik butang butang untuk mendapatkan maklumat pengguna WeChat:
<button bindtap="getUserProfile" class="btn1">獲取頭像</button>
getUserProfile dilaksanakan seperti berikut:
// 推薦使用wx.getUserProfile獲取用戶信息,開發(fā)者每次通過該接口獲取用戶個人信息均需用戶確認(rèn) getUserProfile(e) { let that = this; wx.getUserProfile({ desc: '僅用于生成頭像使用', // 聲明獲取用戶個人信息后的用途,后續(xù)會展示在彈窗中,請謹(jǐn)慎填寫 success: (res) => { //獲取高清用戶頭像 let url = res.userInfo.avatarUrl; while (!isNaN(parseInt(url.substring(url.length - 1, url.length)))) { url = url.substring(0, url.length - 1) } url = url.substring(0, url.length - 1) + "/0"; res.userInfo.avatarUrl = url; that.setData({ userInfo: res.userInfo, hasUserInfo: true }) } }); },
Mendapatkan avatar pengguna WeChat di sini telah selesai.
Nota: Avatar pengguna yang dikembalikan oleh res.userInfo adalah peleraian rendah secara lalai Untuk mendapatkan imej definisi tinggi bagi avatar pengguna, pemprosesan diperlukan.
3.2 Melukis imej
Melukis imej terutamanya menggunakan API berkaitan Kanvas yang disediakan oleh applet WeChat (https://developers. weixin .qq.com/miniprogram/dev/api/canvas/wx.createOffscreenCanvas.html)
Penerangan pembolehubah:
hotArr:[{name:'Year of Bingkai Foto Harimau ',kunci:'hunian'},{nama:'topi kepala harimau',kunci:'shendan'},{nama:'bendera negara',kunci:'guoqing'}],
curHot: used Menyimpan indeks hotArr yang dipilih pada masa ini.
WidowWidth: wx.getSystemInfoSync().windowWidth
saiz: 260; //Saiz tersuai
pc: wx.createCanvasContext('myCanvas' >?); ??>
drawImg(){ wx.showLoading({ title: '生成頭像中...', }) let that = this; let type = this.data.hotArr[this.data.curHot].key; let promise1 = new Promise(function(resolve, reject) { wx.getImageInfo({ src: that.data.userInfo.avatarUrl, success: function(res) { resolve(res); } }) }); var index = that.data.defaultImg; let promise2 = new Promise(function(resolve, reject) { wx.getImageInfo({ src: `../../images/${type}/hat${index}.png`, success: function(res) { resolve(res); } }) }); Promise.all([ promise1, promise2 ]).then(res => { //主要就是計算好各個圖文的位置 pc.clearRect(0, 0, windowWidth, size); //繪制背景圖 pc.drawImage(res[0].path, windowWidth/2-130, 0, size, size) //繪制相框圖 pc.drawImage('../../' + res[1].path, windowWidth/2-130, 0, size, size) pc.stroke() pc.draw(false, () => { //圖片繪制成功回調(diào),調(diào)用保存canvas方法 this.canvasToTempFile(); }) }) },wx.getImageInfo()
digunakan terutamanya untuk mendapatkan maklumat imej dan mengembalikan laluan setempat imej; Hanya menyokong lukisan imej tempatan.
Dalam langkah sebelumnya kami telah melukis dua gambar ke atas kanvas, kini kami akan menyimpan kandungan pada kanvas secara setempat.Menyimpan kandungan pada kanvas ke album tempatan juga dibahagikan kepada dua langkah.
Langkah pertama: Eksport kandungan kawasan tertentu kanvas semasa untuk menjana gambar saiz yang ditentukan.通過使用 wx.canvasToTempFilePath()
第二步:將保存圖片本地相冊。
通過使用 wx.saveImageToPhotosAlbum(https://developers.weixin.qq.com/miniprogram/dev/api/media/image/wx.saveImageToPhotosAlbum.html)
canvasToTempFile(){ wx.canvasToTempFilePath({ x: windowWidth/2-130, //這個地方減去130是因為我們的圖片尺寸設(shè)置的是260 y: 0, height: size, width: size, canvasId: 'myCanvas', success: (res) => { wx.saveImageToPhotosAlbum({ filePath: res.tempFilePath, success: result => { wx.hideLoading(); wx.showModal({ content: '圖片已保存到相冊,請前往微信去設(shè)置喲!', showCancel: false, success: function(res) { if (res.confirm) { console.log('用戶點擊確定'); } } }) }, fail(e) { wx.hideLoading(); console.log("err:" + e); } }) } }); },
到這里也就實現(xiàn)了基本的頭像框功能。
最后
感興趣的小伙伴可以掃碼體驗:
當(dāng)然了,基于上面的內(nèi)容你也可以制作自己的頭像小程序。
最后 提前恭祝大家春節(jié)快樂,虎年大吉?。?!
【相關(guān)學(xué)習(xí)推薦:小程序開發(fā)教程】
Atas ialah kandungan terperinci Membawa anda langkah demi langkah untuk melaksanakan program kecil untuk membuat bingkai avatar untuk Tahun Harimau (Amalan). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Dengan populariti teknologi Internet mudah alih dan telefon pintar, WeChat telah menjadi aplikasi yang sangat diperlukan dalam kehidupan orang ramai. Program mini WeChat membenarkan orang ramai menggunakan program mini secara langsung untuk menyelesaikan beberapa keperluan mudah tanpa memuat turun dan memasang aplikasi. Artikel ini akan memperkenalkan cara menggunakan Python untuk membangunkan applet WeChat. 1. Persediaan Sebelum menggunakan Python untuk membangunkan applet WeChat, anda perlu memasang perpustakaan Python yang berkaitan. Adalah disyorkan untuk menggunakan dua perpustakaan wxpy dan itchat di sini. wxpy ialah mesin WeChat

Melaksanakan kesan flipping kad dalam program mini WeChat Dalam program mini WeChat, melaksanakan kesan flipping kad ialah kesan animasi biasa yang boleh meningkatkan pengalaman pengguna dan daya tarikan interaksi antara muka. Yang berikut akan memperkenalkan secara terperinci cara melaksanakan kesan khas flipping kad dalam applet WeChat dan memberikan contoh kod yang berkaitan. Pertama, anda perlu menentukan dua elemen kad dalam fail susun atur halaman program mini, satu untuk memaparkan kandungan hadapan dan satu untuk memaparkan kandungan belakang Kod sampel khusus adalah seperti berikut: <!--index.wxml-. ->&l

Menurut berita dari laman web ini pada 31 Oktober, pada 27 Mei tahun ini, Ant Group mengumumkan pelancaran "Projek Pemilihan Watak Cina", dan baru-baru ini membawa kemajuan baharu: Alipay melancarkan program mini "Pemilihan Watak Cina-Watak Biasa" untuk mengumpul koleksi daripada masyarakat Watak nadir menambah pustaka aksara jarang dan memberikan pengalaman input yang berbeza untuk aksara jarang untuk membantu memperbaik kaedah input aksara jarang dalam Alipay. Pada masa ini, pengguna boleh memasukkan applet "Watak Tidak Biasa" dengan mencari kata kunci seperti "Pengambilan aksara Cina" dan "aksara jarang". Dalam program mini, pengguna boleh menghantar gambar aksara jarang yang belum dikenali dan dimasukkan oleh sistem Selepas pengesahan, jurutera Alipay akan membuat entri tambahan ke dalam perpustakaan fon. Laman web ini mendapati bahawa pengguna juga boleh mengalami kaedah input pemisahan perkataan terkini dalam program mini Kaedah input ini direka untuk perkataan yang jarang dengan sebutan yang tidak jelas. Pembongkaran pengguna

Program mini boleh menggunakan react. Cara menggunakannya: 1. Laksanakan pemapar berdasarkan "react-reconciler" dan jana DSL 2. Buat komponen program mini untuk menghuraikan dan membuat DSL 3. Pasang npm dan laksanakan Build; npm dalam alat; 4. Perkenalkan pakej ke halaman anda sendiri, dan kemudian gunakan API untuk menyelesaikan pembangunan.

Bagaimana uniapp boleh mencapai penukaran pantas antara program mini dan H5 memerlukan contoh kod khusus Dalam beberapa tahun kebelakangan ini, dengan perkembangan Internet mudah alih dan populariti telefon pintar, program mini dan H5 telah menjadi bentuk aplikasi yang sangat diperlukan. Sebagai rangka kerja pembangunan merentas platform, uniapp boleh dengan cepat merealisasikan penukaran antara program kecil dan H5 berdasarkan set kod, meningkatkan kecekapan pembangunan. Artikel ini akan memperkenalkan cara uniapp boleh mencapai penukaran pantas antara program mini dan H5, dan memberikan contoh kod khusus. 1. Pengenalan kepada uniapp unia

Artikel ini membawakan kepada anda beberapa isu berkaitan tentang program mini WeChat terutamanya cara menggunakan mesej templat akaun dalam program mini. Saya harap ia dapat membantu semua orang.

Idea pelaksanaan x01 Penubuhan pelayan Pertama, pada bahagian pelayan, soket digunakan untuk menerima mesej Setiap kali permintaan soket diterima, utas baharu dibuka untuk menguruskan pengedaran dan penerimaan mesej Pada masa yang sama, terdapat pengendali untuk menguruskan semua Thread, dengan itu merealisasikan pemprosesan pelbagai fungsi ruang sembang Penubuhan pelanggan x02 adalah lebih mudah daripada pelayan Fungsi pelanggan hanya untuk menghantar dan menerima mesej, dan untuk memasukkan aksara tertentu mengikut peraturan tertentu. Ini membolehkan penggunaan fungsi yang berbeza, di sisi pelanggan, anda hanya perlu menggunakan dua utas, satu didedikasikan untuk menerima mesej, dan yang lain didedikasikan untuk menghantar mesej adalah kerana, hanya

Kedudukan geolokasi dan paparan peta PHP dan program mini Kedudukan geolokasi dan paparan peta telah menjadi salah satu fungsi yang diperlukan dalam teknologi moden. Dengan populariti peranti mudah alih, permintaan orang ramai untuk kedudukan dan paparan peta juga meningkat. Semasa proses pembangunan, PHP dan applet adalah dua pilihan teknologi biasa. Artikel ini akan memperkenalkan anda kepada kaedah pelaksanaan kedudukan lokasi geografi dan paparan peta dalam program PHP dan mini, serta melampirkan contoh kod yang sepadan. 1. Geolokasi dalam PHP Dalam PHP, kita boleh menggunakan geolokasi pihak ketiga
