前端生成二維碼

直接img標簽顯示
npm i use_qrcode
npm包地址

<img :src="qrcode" alt="QR Code" />
const txt: any = ref('https://baidu.com')
const qrcode = useQRCode(txt)
const qrcodeLogo = useQRCode(txt, { logoSrc: 'https://www.antdv.com/assets/logo.1ef800a8.svg' })
import { useQRCode as _useQRCode } from "@vueuse/integrations/useQRCode";
import * as QRCode from "qrcode";
import { toRef, isClient } from "@vueuse/shared";
import { ref, watch } from "vue-demi";export function useQRCode(text: string, options?: any) {if (options?.logoSrc) return useLogoQRCode(text, options);return _useQRCode(text, options);
}export function useLogoQRCode(text, options) {const src = toRef(text);const result = ref("");const canvas: any = document.createElement("canvas");canvas.width = 132;canvas.height = 132;const logoImgSrc = ref(options.logoSrc);const labelText = "";watch(src,async (value) => {if (src.value && isClient) result.value = "";await QRCode.toDataURL(value, options, (err: any, url: string) => {let imgQRCode = new Image();imgQRCode.src = url;imgQRCode.crossOrigin = "anonymous";let img = new Image();img.src = logoImgSrc.value;img.crossOrigin = "anonymous";try {let ctx = (<HTMLCanvasElement>canvas).getContext("2d");// ctx.clearRect(0, 0, canvas.width, canvas.height);setTimeout(() => {ctx.drawImage(imgQRCode,0,0,imgQRCode.width,imgQRCode.height,0,0,canvas.width,canvas.width);let canvas_Centre_Horizontal = canvas.width / 2;let canvas_Centre_Vertical = canvas.width / 2;let logoSize_Horizontal = canvas.width * 0.16;let logoSize_Vertical = canvas.width * 0.16;let imageStart_Horizontal =canvas_Centre_Horizontal - logoSize_Horizontal / 2;let imageStart_Vertical =canvas_Centre_Vertical - logoSize_Vertical / 2;ctx.drawImage(img,//0, 0, THIS.img.nativeElement.width, THIS.img.nativeElement.height,imageStart_Horizontal,imageStart_Vertical,logoSize_Horizontal,logoSize_Vertical);ctx.font = "10px Arial";ctx.textAlign = "center";ctx.fillText(labelText, canvas.width / 2, canvas.height - 10);result.value = canvas.toDataURL("image/png");}, 50);} catch (ex) {console.log(ex);}});},{ immediate: true });return result;
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/14579.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/14579.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/14579.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

2.go環境配置與開發工具選擇

go 環境配置 下載安裝包 官網(https://go.dev/dl/) 下載地址(國內)(https://golang.google.cn/dl/) 根據自己的操作系統選擇下載即可 下載后安裝 記住地址 比如&#xff1a; D:\work\devtool\go 配置系統環境變量 PATH 指向 go 的安裝 bin 目錄 比如&#xff1a; D:\work…

若依前端vue實現 輸入框下拉選擇加搜索用戶

探索代碼以及詳細的注解 <template><div><el-select v-model"selectedUserId" filterable placeholder"選擇用戶" change"handleChange"><el-optionv-for"user in filteredUsers":key"user.userId":l…

集合框框框地架

這一次來介紹一下常用的集合&#xff1a; 首先是兩種集合的《家庭系譜圖》&#xff1a; 接下來介紹一下集合的種類&#xff1a; Collection Set SetTreeSet&#xff1a;基于紅?樹實現&#xff0c;?持有序性操作&#xff0c;例如&#xff1a;根據?個范圍查找元素的操作。但…

如何使用純原生的ADO.NET技術進行數據讀取

目錄 1. 引用命名空間 2. 創建連接字符串 3. 打開數據庫連接 4. 執行SQL查詢 5. 讀取結果集 6. 處理異常和關閉連接 1. 引用命名空間 在代碼文件中引用幾個關鍵的System.Data.SqlClient命名空間&#xff0c;這些命名空間包含了用于數據庫操作的類。 using System.Data.Sq…

Unity實現TableView

基于Scrollview封裝的TableView&#xff0c;實現對視野外的Cell回收利用&#xff0c;減少創建Cell的開銷。 核心邏輯如下&#xff1a; /***************************************動態使用cell核心邏輯開始 **************************************///計算所有cell的坐標信息 …

利用java8 的 CompletableFuture 優化 Flink 程序,性能提升 50%

你好&#xff0c;我是 shengjk1&#xff0c;多年大廠經驗&#xff0c;努力構建 通俗易懂的、好玩的編程語言教程。 歡迎關注&#xff01;你會有如下收益&#xff1a; 了解大廠經驗擁有和大廠相匹配的技術等 希望看什么&#xff0c;評論或者私信告訴我&#xff01; 文章目錄 一…

flume sink 簡介及官方用例

1、HDFS Sink 此sink將事件寫入 Hadoop 分布式文件系統 &#xff08;HDFS&#xff09; 中。它目前支持創建文本和序列文件。它支持兩種文件類型的壓縮。可以根據經過的時間或數據大小或事件數定期滾動文件&#xff08;關閉當前文件并創建一個新文件&#xff09;。它還按事件起…

AI圖書推薦:用100個ChatGPT提示詞掌握Python編程

《用100個ChatGPT提示詞掌握Python編程》&#xff08;ChatGPT:Your Python Coach Mastering the Essentials in 100 Prompts&#xff09; 塞爾吉奧羅哈斯-加萊亞諾&#xff08;Sergio Rojas-Galeano&#xff09;是一位熱情的計算機科學家&#xff0c;對人工智能、機器學習、進化…

C++中獲取int最大與最小值(補)

上文中&#xff0c;我們學習了C中獲取int最大與最小值的兩種方法&#xff1a;C庫和移位運算&#xff0c;這篇文章將解決在移位運算中遇到的各種報錯&#xff0c;并提出一種新的生成int最值的方法 上文鏈接&#xff1a;http://t.csdnimg.cn/cn7Ad 移位運算取最值常見報錯 Dev…

匯編語言(STC89C52)

指令是計算機計算CPU根據人的意圖來執行某種操作的命令。一臺計算機所執行的全部指令的集合&#xff0c;稱為這個CPU的指令系統。而想要使計算機按照人們的要求完成一項工作&#xff0c;就必須讓CPU按順序執行預設的操作&#xff0c;即逐條執行人們編寫的指令。這種按照人民要求…

C++ 寫的_string類,兼容std::string, MFC CString和 C# 的string

代碼例子&#xff1a; using namespace lf; int main() { CString s1 _t("http://www.csdn.net"); _string s2 s1; CString s3 s2; _pcn(s1); _pcn(s2); _pcn(s3); return 0; } 輸出&#xff1a; _Str.h /***************************************…

網創教程:WordPress插件網創自動采集并發布

網創教程&#xff1a;WordPress插件網創自動采集并發布 使用插件注意事項&#xff1a; 如果遇到404錯誤&#xff0c;請先檢查并調整網站的偽靜態設置&#xff0c;這是最常見的問題。需要定制化服務&#xff0c;請隨時聯系我。 本次更新內容 我們進行了多項更新和優化&#x…

深入解析kube-scheduler的算法自定義插件

目錄 ?編輯 一、問題引入 二、自定義步驟 三、最佳實踐考慮 一、問題引入 當涉及到 Kubernetes 集群的調度和資源分配時&#xff0c;kube-scheduler 是一個關鍵組件。kube-scheduler 負責根據集群的調度策略&#xff0c;將 Pod 分配到適當的節點上。kube-scheduler 默認使…

python爬蟲學習代碼1

百度翻譯&#xff1a;利用爬蟲技術模擬人工查詢英文單詞&#xff0c;將查到的信息保存到本地 import requests import json # 1.指定url post_url https://fanyi.baidu.com/sug # 2.UA標識 headers {"User-Agent": Mozilla/5.0 (Windows NT 10.0; Win64; x64) Appl…

pyqt6入門案例

效果預覽 hello.ui <?xml version"1.0" encoding"UTF-8"?> <ui version"4.0"><class>Dialog</class><widget class"QDialog" name"Dialog"><property name"geometry"><…

android studio接入facebook踩坑1

今天在接入facebook第三方登錄的時候&#xff0c;點擊登錄按鈕&#xff0c;APP閃退&#xff0c;并報錯 java.lang.RuntimeException Failure delivering result ResultInfo{whonull,request64206,result-1} 新文章鏈接https://lengmo714.top/facebook1.html 如下圖&#xff1a;…

OpenGL學習入門及開發環境搭建

最近學習OpenGL開發&#xff0c;被各種openGL庫搞得暈頭轉向&#xff0c;什么glut, glew glfw glad等等。 可以參考這邊博客:OpenGL 下面的 glut freeglut glfw 都是個啥_glx wgl的中文-CSDN博客 glfw是glut的升級版&#xff0c;跨平臺的主要處理窗口 事件相關。 glad是glew…

React項目知識積累(四)

1.useMemo( ) 在 React 中&#xff0c;useMemo 是一個 Hook&#xff0c;用于記憶計算結果&#xff0c;只有當依賴項之一發生變化時&#xff0c;才會重新計算。這有助于避免不必要的計算和渲染&#xff0c;從而提高應用程序的性能。 基本語法如下&#xff1a; const memoized…

html多節點生成圖片并導出zip包

html多節點生成圖片并導出zip包 背景 在做項目時遇到一個要將html節點展示的圖片列表統一導出為zip包的需求。 難點 將html節點生成圖片將多張圖片加入zip包中&#xff0c;然后下載 解決html生成圖片問題 參考html截圖的思路使用 pnpm add html-to-image如何將圖片資源生成z…

鴻蒙OS開發:【一次開發,多端部署】(多設備自適應能力)簡單介紹

多設備自適應能力 介紹 本示例是《一次開發&#xff0c;多端部署》的配套示例代碼&#xff0c;展示了[頁面開發的一多能力]&#xff0c;包括自適應布局、響應式布局、典型布局場景以及資源文件使用。 名稱簡介 開發前請熟悉鴻蒙開發指導文檔&#xff1a;gitee.com/li-shizhe…