【成都魚住未來身份證】 身份證讀取與解析———未來之窗行業應用跨平臺架構——智能編程——仙盟創夢IDE

?

?讀取身份證開發配置

 function readerid魚住未來科技(){const webUrl = 'http://' + "127.0.0.1:30004" + '/api/info'$.ajax({url: webUrl,type: 'GET',dataType: 'json',success: function (result) {// processContent.text('web api接口:' + webUrl + ' 讀取身份證信息成功')const szparam = result身份證渲染_魚住未來科技(szparam);},error: function (jqXHR, textStatus, errorThrown) {//  processContent.text('web api接口:' + webUrl + ' 讀取身份證失敗,原因:' + hex2a(window.atob(errorThrown)))alert("讀取身份證失敗"+ hex2a(window.atob(errorThrown)));}})}

身份證解析代碼?

function 身份證渲染_魚住未來科技(szparam){//  alert(szparam.CardType);if (szparam.CardType == 74){// 切換背景圖片   83是臺灣cardFront.removeClass()cardBack.removeClass()cardFront.addClass('GAT-card')cardFront.addClass('card-hongkong-macao-taiwan-front')cardBack.addClass('GAT-card')let no = hex2a(window.atob(szparam.CardInfo.No))if (no && no.startsWith('83')){cardBack.addClass('card-taiwan-back')}else{cardBack.addClass('card-hongkong-macao-back')}strLog = '讀取 港澳臺居民居住證 成功\r\n';strLog += 'SN:' + szparam.CardInfo.SN + '\r\n';strLog += '中文名:' + hex2a(window.atob(szparam.CardInfo.Name)) + '\r\n';strLog += '證件號碼:' + no + '\r\n';strLog += '性別:' + hex2a(window.atob(szparam.CardInfo.Sex)) + '\r\n';strLog += '出生日期:' + hex2a(window.atob(szparam.CardInfo.Birthday)) + '\r\n';strLog += '民族:' + hex2a(window.atob(szparam.CardInfo.Nation)) + '\r\n';strLog += '地址:' + hex2a(window.atob(szparam.CardInfo.Address)) + '\r\n';strLog += '簽發機關:' + hex2a(window.atob(szparam.CardInfo.SignedDepartment)) + '\r\n';strLog += '開始日期:' + hex2a(window.atob(szparam.CardInfo.ValidityPeriodBegin)) + '\r\n';strLog += '結束日期:' + hex2a(window.atob(szparam.CardInfo.ValidityPeriodEnd)) + '\r\n\r\n';strLog += '通行證號碼:' + hex2a(window.atob(szparam.CardInfo.OtherNO)) + '\r\n';strLog += '簽發次數:' + hex2a(window.atob(szparam.CardInfo.SignNum)) + '\r\n';//processContent.text(strLog)// 港澳臺通行證號碼console.log(szparam.CardInfo)// cardFront.find('.name').text(hex2a(window.atob(szparam.CardInfo.Name)))// cardFront.find('.sex').text(hex2a(window.atob(szparam.CardInfo.Sex)) ==='1'? '男':'女')const Birthday = hex2a(window.atob(szparam.CardInfo.Birthday))const birthArr = parseDateString(Birthday , ".", true).split(".")// cardFront.find('.year').text(birthArr[0])// cardFront.find('.month').text(birthArr[1])// cardFront.find('.date').text(birthArr[2])// cardFront.find('.address').text(hex2a(window.atob(szparam.CardInfo.Address)))//  cardFront.find('.number').text(hex2a(window.atob(szparam.CardInfo.No)))//  cardBack.find('.department').text(hex2a(window.atob(szparam.CardInfo.SignedDepartment)))const ValidityPeriodBegin = hex2a(window.atob(szparam.CardInfo.ValidityPeriodBegin))const ValidityPeriodEnd = hex2a(window.atob(szparam.CardInfo.ValidityPeriodEnd)).trim()const expiryBegin = parseDateString(ValidityPeriodBegin, '.')const expiryEnd = ValidityPeriodEnd !== '長期' ? parseDateString(ValidityPeriodEnd, '.') : ValidityPeriodEnd// cardBack.find('.expiry').text( expiryBegin + '-' + expiryEnd)//  cardBack.find('.pass-number').text(  hex2a(window.atob(szparam.CardInfo.OtherNO)))}else if (szparam.CardType == 73){// 切換背景圖片   83是臺灣cardFront.removeClass()cardBack.removeClass()cardFront.addClass('WGR-card-1')cardFront.addClass('card-old-foreigner-front')cardBack.addClass('WGR-card-1')cardBack.addClass('card-old-foreigner-back')strLog = '讀取 外國人永久居留身份證(舊版) 成功\r\n';strLog += 'SN:' + szparam.CardInfo.SN + '\r\n';strLog += '中文名:' + hex2a(window.atob(szparam.CardInfo.Name)) + '\r\n';strLog += '英文名:' + hex2a(window.atob(szparam.CardInfo.EnName)) + '\r\n';strLog += '證件號碼:' + hex2a(window.atob(szparam.CardInfo.No)) + '\r\n';strLog += '性別:' + hex2a(window.atob(szparam.CardInfo.Sex)) + '\r\n';strLog += '出生日期:' + hex2a(window.atob(szparam.CardInfo.Birthday)) + '\r\n';strLog += '國籍:' + hex2a(window.atob(szparam.CardInfo.Country)) + '\r\n';strLog += '簽發機關:中華人民共和國移民管理局\r\n';strLog += '開始日期:' + hex2a(window.atob(szparam.CardInfo.ValidityPeriodBegin)) + '\r\n';strLog += '結束日期:' + hex2a(window.atob(szparam.CardInfo.ValidityPeriodEnd)) + '\r\n\r\n';strLog += '版本號:' + hex2a(window.atob(szparam.CardInfo.Version)) + '\r\n';processContent.text(strLog)let name = hex2a(window.atob(szparam.CardInfo.Name))let enName = hex2a(window.atob(szparam.CardInfo.EnName))let nameText = enName + (name.trim()? ' / '+ name : '')//  cardFront.find('.name').text(nameText)//  cardFront.find('.sex').text(hex2a(window.atob(szparam.CardInfo.Sex)) === '1'? '男': '女')const Birthday = hex2a(window.atob(szparam.CardInfo.Birthday))const birthArr = parseDateString(Birthday , ".", true).split(".")cardFront.find('.year').text(birthArr.join('-')) //出生年月cardFront.find('.month').text(hex2a(window.atob(szparam.CardInfo.Country)))//國籍const ValidityPeriodBegin = hex2a(window.atob(szparam.CardInfo.ValidityPeriodBegin))const ValidityPeriodEnd = hex2a(window.atob(szparam.CardInfo.ValidityPeriodEnd)).trim()const expiryBegin = parseDateString(ValidityPeriodBegin, '.')const expiryEnd = ValidityPeriodEnd !== '長期' ? parseDateString(ValidityPeriodEnd, '.') : ValidityPeriodEnd//  cardFront.find('.date').text(expiryBegin + '-' + expiryEnd)// cardFront.find('.address').text('中華人民共和國移民管理局') //// cardFront.find('.number').text(hex2a(window.atob(szparam.CardInfo.No)))}else if (szparam.CardType == 89){// 切換背景圖片   83是臺灣cardFront.removeClass()cardBack.removeClass()cardFront.addClass('WGR-card')cardFront.addClass('card-new-foreigner-front')cardBack.addClass('WGR-card')cardBack.addClass('card-new-foreigner-back')strLog = '讀取 外國人永久居留身份證(新版) 成功\r\n';strLog += 'SN:' + szparam.CardInfo.SN + '\r\n';strLog += '中文名:' + hex2a(window.atob(szparam.CardInfo.Name)) + '\r\n';strLog += '英文名:' + hex2a(window.atob(szparam.CardInfo.EnName)) + '\r\n';strLog += '證件號碼:' + hex2a(window.atob(szparam.CardInfo.No)) + '\r\n';strLog += '性別:' + hex2a(window.atob(szparam.CardInfo.Sex)) + '\r\n';strLog += '出生日期:' + hex2a(window.atob(szparam.CardInfo.Birthday)) + '\r\n';strLog += '國籍:' + hex2a(window.atob(szparam.CardInfo.Country)) + '\r\n';strLog += '簽發機關:中華人民共和國移民管理局\r\n';strLog += '開始日期:' + hex2a(window.atob(szparam.CardInfo.ValidityPeriodBegin)) + '\r\n';strLog += '結束日期:' + hex2a(window.atob(szparam.CardInfo.ValidityPeriodEnd)) + '\r\n\r\n';strLog += '通行證號碼:' + hex2a(window.atob(szparam.CardInfo.OtherNO)) + '\r\n';strLog += '簽發次數:' + hex2a(window.atob(szparam.CardInfo.SignNum)) + '\r\n';//  processContent.text(strLog)let name = hex2a(window.atob(szparam.CardInfo.Name))let enName = hex2a(window.atob(szparam.CardInfo.EnName))//  cardFront.find('.name').text(name)//  cardFront.find('.enName').text(enName)// cardFront.find('.sex').text(hex2a(window.atob(szparam.CardInfo.Sex)) === '1'? '男': '女')const Birthday = hex2a(window.atob(szparam.CardInfo.Birthday))const birthArr = parseDateString(Birthday , ".", true).split(".")//  cardFront.find('.year').text(birthArr.join('-')) //出生年月//  cardFront.find('.month').text(hex2a(window.atob(szparam.CardInfo.Country)))//國籍const ValidityPeriodBegin = hex2a(window.atob(szparam.CardInfo.ValidityPeriodBegin))const ValidityPeriodEnd = hex2a(window.atob(szparam.CardInfo.ValidityPeriodEnd)).trim()const expiryBegin = parseDateString(ValidityPeriodBegin, '.')const expiryEnd = ValidityPeriodEnd !== '長期' ? parseDateString(ValidityPeriodEnd, '.') : ValidityPeriodEnd// cardFront.find('.date').text(expiryBegin + '-' + expiryEnd)// cardFront.find('.number').text(hex2a(window.atob(szparam.CardInfo.No)))}else{// cardFront.removeClass()// cardBack.removeClass()//cardFront.addClass('ID-card')// cardFront.addClass('card-front')// cardBack.addClass('ID-card')// cardBack.addClass('card-back')strLog = '讀取 身份證 成功\r\n';strLog += 'SN:' + szparam.CardInfo.SN + '\r\n';strLog += '中文名:' + hex2a(window.atob(szparam.CardInfo.Name)) + '\r\n';strLog += '證件號碼:' + hex2a(window.atob(szparam.CardInfo.No)) + '\r\n';strLog += '性別:' + hex2a(window.atob(szparam.CardInfo.Sex)) + '\r\n';strLog += '出生日期:' + hex2a(window.atob(szparam.CardInfo.Birthday)) + '\r\n';strLog += '民族:' + hex2a(window.atob(szparam.CardInfo.Nation)) + '\r\n';strLog += '地址:' + hex2a(window.atob(szparam.CardInfo.Address)) + '\r\n';strLog += '簽發機關:' + hex2a(window.atob(szparam.CardInfo.SignedDepartment)) + '\r\n';strLog += '開始日期:' + hex2a(window.atob(szparam.CardInfo.ValidityPeriodBegin)) + '\r\n';strLog += '結束日期:' + hex2a(window.atob(szparam.CardInfo.ValidityPeriodEnd)) + '\r\n\r\n';strLog += '通行證號碼:' + hex2a(window.atob(szparam.CardInfo.OtherNO)) + '\r\n';strLog += '簽發次數:' + hex2a(window.atob(szparam.CardInfo.SignNum)) + '\r\n';// alert(strLog);// processContent.text(strLog)//  內容填充// cardFront.find('.name').text(hex2a(window.atob(szparam.CardInfo.Name)))// cardFront.find('.sex').text(hex2a(window.atob(szparam.CardInfo.Sex)))//  cardFront.find('.nation').text(hex2a(window.atob(szparam.CardInfo.Nation)))const Birthday = hex2a(window.atob(szparam.CardInfo.Birthday))const birthArr = parseDateString(Birthday , ".", true).split(".")// cardFront.find('.year').text(birthArr[0])// cardFront.find('.month').text(birthArr[1])// cardFront.find('.date').text(birthArr[2])// cardFront.find('.address').text(hex2a(window.atob(szparam.CardInfo.Address)))// cardFront.find('.number').text(hex2a(window.atob(szparam.CardInfo.No)))// cardBack.find('.department').text(hex2a(window.atob(szparam.CardInfo.SignedDepartment)))const ValidityPeriodBegin = hex2a(window.atob(szparam.CardInfo.ValidityPeriodBegin))const ValidityPeriodEnd = hex2a(window.atob(szparam.CardInfo.ValidityPeriodEnd)).trim()const expiryBegin = parseDateString(ValidityPeriodBegin, '.')const expiryEnd = ValidityPeriodEnd !== '長期' ? parseDateString(ValidityPeriodEnd, '.') : ValidityPeriodEnd// cardBack.find('.expiry').text( expiryBegin + '-' + expiryEnd)const 姓名 = hex2a(window.atob(szparam.CardInfo.Name));const 證件號 =hex2a(window.atob(szparam.CardInfo.No));var 性別 =hex2a(window.atob(szparam.CardInfo.Sex)) ;const 地址 = hex2a(window.atob(szparam.CardInfo.Address)); // alert(地址);if(性別 == 1){性別="男";}else{性別="女";}var 身份證信息={username:姓名,userid:證件號,usersex:性別,address:地址};未來之窗_人工智能_前端口_數據渲染到界面(身份證信息,"");}// SNContent.text(szparam.CardInfo.SN)// cardFront.find('.image').attr('src','data:image/jpg;base64,' + szparam.BmpInfo)// if (szparam.CardInfo.Name){//   cardFront.find('.name').text(hex2a(window.atob(szparam.CardInfo.Name)))// }// if (szparam.CardInfo.Sex){//   cardFront.find('.sex').text(hex2a(window.atob(szparam.CardInfo.Sex)))// }// if (szparam.CardInfo.Nation){//   cardFront.find('.nation').text(hex2a(window.atob(szparam.CardInfo.Nation)))// }//// const Birthday = hex2a(window.atob(szparam.CardInfo.Birthday))// const birthArr = parseDateString(Birthday , ".", true).split(".")// cardFront.find('.year').text(birthArr[0])// cardFront.find('.month').text(birthArr[1])// cardFront.find('.date').text(birthArr[2])//// if (szparam.CardInfo.Address){//   cardFront.find('.address').text(hex2a(window.atob(szparam.CardInfo.Address)))// }//// if (szparam.CardInfo.No){//   cardFront.find('.number').text(hex2a(window.atob(szparam.CardInfo.No)))// }//// if (szparam.CardInfo.SignedDepartment){//   cardBack.find('.department').text(hex2a(window.atob(szparam.CardInfo.SignedDepartment)))// }//// const ValidityPeriodBegin = hex2a(window.atob(szparam.CardInfo.ValidityPeriodBegin))// const ValidityPeriodEnd = hex2a(window.atob(szparam.CardInfo.ValidityPeriodEnd)).trim()// const expiryBegin = parseDateString(ValidityPeriodBegin, '.')// const expiryEnd = ValidityPeriodEnd !== '長期' ? parseDateString(ValidityPeriodEnd, '.') : ValidityPeriodEnd// cardBack.find('.expiry').text( expiryBegin + '-' + expiryEnd)}

相關函數

function hex2a(hex) {let str_list = ''for (let i = 0; i < hex.length && hex.substr(i, 2) !== '00'; i += 2) {const a = hex.charCodeAt(i)const b = hex.charCodeAt(i + 1)const c = b * 256 + astr_list += String.fromCharCode(c)}return str_list.toString()}function parseDateString(str, deco, zero) {let year = str.substr(0,4)let month = str.substr(4,2)let date = str.substr(6)if(zero) {month = month.substr(0,1) === "0" ? month.substr(1) : monthdate = date.substr(0,1) === "0" ? date.substr(1) : date}return `${year}${deco}${month}${deco}${date}`}

智能編程

智能編程能大幅提升編程效率,自動完成重復代碼編寫、精準提供代碼建議,還可借助數據分析優化代碼性能,并降低編程門檻,讓更多人參與開發,加速創新進程

阿雪技術觀
讓我們積極投身于技術共享的浪潮中,不僅僅是作為受益者,更要成為貢獻者。無論是分享自己的代碼、撰寫技術博客,還是參與開源項目的維護和改進,每一個小小的舉動都可能成為推動技術進步的巨大力量

Embrace open source and sharing, witness the miracle of technological progress, and enjoy the happy times of humanity! Let's actively join the wave of technology sharing. Not only as beneficiaries, but also as contributors. Whether sharing our own code, writing technical blogs, or participating in the maintenance and improvement of open source projects, every small action may become a huge force driving technological progress.

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

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

相關文章

開啟并連接redis以及端口占用問題

開啟命令行 redis-server.exe redis.windows.conf 端口占用問題 查看端口&#xff1a; 輸入命令行&#xff1a; netstat -ano | findstr :6379 找到并停止pid號&#xff1a; 這個要用到cmd管理員身份打開 taskkill /f /pid 你的端口號 重新開啟就行了 再用另一個cmd進行連…

MCP數據可視化服務器配置依賴

# requirements.txt # MCP數據可視化服務器依賴包# 核心MCP包 mcp>=0.1.0# 數據處理 pandas>=2.0.0 numpy>=1.24.0# 可視化 matplotlib>=3.7.0 seaborn>=0.12.0# 異步支持 asyncio-mqtt>=0.13.0# JSON處理 jsonschema>=4.17.0# 圖像處理 Pillow>=9.5.0…

量化面試綠皮書:14. 鐘表零件

文中內容僅限技術學習與代碼實踐參考&#xff0c;市場存在不確定性&#xff0c;技術分析需謹慎驗證&#xff0c;不構成任何投資建議。 14. 鐘表零件 一個時鐘(順時針編號為 1-12)從墻上掉了下來&#xff0c;摔成三塊你發現每塊上的數字之和是相等的。 Q: 每塊上的數字是多少&…

AndroidR平臺ToastPresenter引出BinderProxy泄漏

一、問題描述 針對SA8155車機系統Qnx+Android,自動化測試模擬發送CAN信號測試,壓測報出多例BinderProxy leak引起system_server重啟 問題1 [CRASH] system_server osVersion: V1.2.***,提交時間:2025-06-05 ***,復現了2次java.lang.AssertionError: Binder ProxyMap has…

windows11中切換到其他桌面再切回當前桌面,任務欄的WPS有好幾個窗口

感謝知乎的網友 原文鏈接 新建一個后綴為 .reg 的文本文件&#xff0c;將以下內容粘貼進去&#xff0c;保存&#xff0c;然后雙擊運行 Windows Registry Editor Version 5.00[HKEY_CURRENT_USER\Software\kingsoft\Office\6.0\wpsoffice\Application Settings]"enable_m…

從匯編的角度揭開C++ this指針的神秘面紗(下)

<接上篇> 我們接著來看一段C的代碼&#xff1a; class A { public:int func(int j){return j _i;} private:int _i; };int main() {A a;a.func(3);return 0; } 這里定義了一個類A&#xff0c;在main函數中定義了A類的對像a。同時用a調用了成員函數func。我們來看一…

Kafka代碼模板

Kafka 服務器&#xff08;Broker&#xff09; 的配置 server.properties # broker.id: 每個 Kafka Broker 的唯一標識符。broker.id 必須在整個 Kafka 集群中唯一。 broker.id0# 配置 Kafka Broker 監聽客戶端請求的地址和端口。這個配置決定了 Kafka 服務將接受來自生產者、…

最大子數組和C++

給你一個整數數組 nums &#xff0c;請你找出一個具有最大和的連續子數組&#xff08;子數組最少包含一個元素&#xff09;&#xff0c;返回其最大和。 子數組是數組中的一個連續部分。 示例 1&#xff1a; 輸入&#xff1a;nums [-2,1,-3,4,-1,2,1,-5,4] 輸出&#xff1a;…

centos 7單機安裝ceph并創建rbd塊設備

1. 安裝依賴包 新增阿里云源ceph下載地址 vim /etc/yum.repos.d/ceph.repo [ceph] nameceph baseurlhttp://mirrors.aliyun.com/ceph/rpm-jewel/el7/x86_64/ gpgcheck0 [ceph-noarch] namecephnoarch baseurlhttp://mirrors.aliyun.com/ceph/rpm-jewel/el7/noarch/ gpgcheck…

Jenkins搭建、權限管理、參數化、流水線等詳細教程!

部署Jenkins 一、jenkins 安裝 官網&#xff1a; https://jenkins.io yum 安裝 jenkins *jenkins 依賴 java 環境 #注意2.346之后的版本不再支持jdk8 卸載舊jenkins #查詢以前是否安裝jenkins rpm -qa |grep jenkins #卸載 jenkins yum -y remove jenkins rpm -e jenkins…

百度飛槳(PaddlePaddle)案例分享:基于 PaddleOCR 的圖像文字提取系統

一、案例背景 在實際教學、辦公及政務系統中&#xff0c;紙質材料&#xff08;如手寫作文、表格、試卷等&#xff09;仍廣泛存在。為提升信息處理效率&#xff0c;采用 OCR&#xff08;Optical Character Recognition&#xff09;技術將圖像中的文字提取為可編輯文本已成為剛需…

python操控鼠標

在已知屏幕坐標的情況下&#xff0c;可以通過 Python 的 pyautogui 或 pynput 等庫實現網頁上的鼠標點擊操作。以下是具體步驟和代碼示例&#xff1a; 1. 使用 PyAutoGUI&#xff08;推薦&#xff09; pyautogui 是一個簡單易用的庫&#xff0c;可以直接通過屏幕坐標控制鼠標點…

UV 與 Bun 深度解析

UV 與 Bun 深度解析&#xff1a;現代開發工具的安裝與使用指南 什么是 UV&#xff1f; UV&#xff08;Ultra-Velocity&#xff09;是由 Astral 公司&#xff08;Ruff 的創建者&#xff09;開發的超高速 Python 包管理工具&#xff1a; 用 Rust 編寫&#xff0c;速度極快&…

【算力網絡】多樣化算力感知

一、算力網絡 ? 算力網絡&#xff08;Computing Power Network&#xff09;是我國率先提出的原創性技術理念&#xff0c;其核心是通過高速網絡整合分散的算力資源&#xff08;如云端、邊緣、終端等&#xff09;&#xff0c;實現算力的動態感知、智能調度和一體化服務&#x…

Greenplum/PostgreSQL pg_hba.conf 認證方法詳解

Greenplum/PostgreSQL pg_hba.conf 認證方法詳解 pg_hba.conf 文件中的 METHOD 字段指定了客戶端認證方式&#xff0c;以下是各種認證方法的詳細說明和配置示例。 常用認證方法 1. trust - 無條件允許連接 說明&#xff1a;不需要密碼&#xff0c;完全信任連接 適用場景&am…

分布式數據庫中間件-Sharding-JDBC

前言 學習視頻&#xff1a;深入Sharding-JDBC分庫分表從入門到精通【黑馬程序員】本內容僅用于個人學習筆記&#xff0c;如有侵擾&#xff0c;聯系刪除 1、概述 1.1、分庫分表是什么 小明是一家初創電商平臺的開發人員&#xff0c;他負責賣家模塊的功能開發&#xff0c;其中…

pycharm2020.2版本給項目選擇了虛擬環境解釋器,項目文件都運行正常,為什么terminal文件路徑的前面沒有虛擬解釋器的名稱

解決問題&#xff1a; 1.打開 Anaconda Prompt輸入 conda init cmd.exe 或者 pycharm終端直接 conda init cmd.exe 重啟動 CMD和pycharm&#xff0c;使配置生效。

2025商旅平臺排行:國內主流商旅平臺解析

在數字化轉型加速2025年&#xff0c;企業商旅管理正從“成本中心”向“智能管控樞紐”升級。如何通過技術賦能實現商旅成本精準優化與管理效率躍升&#xff1f;本文聚焦國內五大主流商旅平臺&#xff0c;以“綜合型頭部平臺創新型平臺”雙維度解析&#xff0c;結合數據實證與場…

CNS無線電信號覆蓋分析系統v0.1

#系統終端有的版本號了# 開發一套類EMACS的專業軟件任重道遠&#xff0c;經過慢吞吞的開發&#xff0c;我們已經將目標定位大幅下調了&#xff0c;不再對標EMACS系統了&#xff0c;改為瞄行業老二WRAP軟件了。當然WRAP軟件在電磁信號仿真分析領域也是神一樣的存在&#xff0c;其…

單視頻二維碼生成與列表二維碼生成(完整版)

視頻二維碼有有兩種情況&#xff1a;一種是單個視頻的生成一個二維碼&#xff1b;另一種是一組視頻&#xff08;多個視頻&#xff09;生成一個列表二維碼。用戶按自己的實際需求生成&#xff0c;即可&#xff0c;很方便。 STEP1 注冊帳號 使用視頻二維碼&#xff0c;您需要注…