1_驗證碼與條形碼
1.1_條碼基礎知識
條碼:條碼是由一組按一定編碼規則排列的條、空符號組成,用以表示一定的字符、數字及符號組成的信息
1.2_一維碼
(1)Code 128
Code 128 是一種密度很高的字母數字代碼系統,可對其進行雙向掃描。此代碼系統可編碼整個 128 ASCII 字符集以及四個非數據字符。采用 Code 128 代碼系統的符號使用 11 個黑色或白色模塊編碼每個字符,并且每個符號包含一個校驗和字符。
(2)UPC/EAN
UPC 是一種固定長度的純數字代碼系統,可對其進行雙向掃描。UPC 符號的大小可變以適應各種打印流程,但代碼在符號的高度大于其寬度時效果最佳。歐洲公司使用大體相當的 European Article Numbering (EAN) 系統
(3)Code 39
Code 39(也稱為 USS Code 39 或 Code three of nine)是一種廣泛使用的代碼系統,專門針對非零售環境應用,可編碼字母、數字以及“%”和“/”等特殊字符。使用 Code 39 代碼系統的符號使用 5 個條碼和 4 個空格(共計 9 個元素)來編碼每個字符,并且 9 個元素中有 3 個始終為寬。此符號可包含用于進行錯誤檢測的校驗和字符
(4) Code 93
Code 93 所解碼的字符與 Code 39 相同,但每個字符使用 9 個條碼元素,而非 15 個
(5)Codabar
Codabar 是一種用于編碼數字的較舊代碼系統。
(6)Pharmacode
Pharmacode 在制藥工業中用作包裝控制系統。
(7)PDF417
PDF417 是堆疊的線性條碼符號格式,主要用于包括運輸、身份證和庫存管理在內的多種應用。
(8)EAN.UCC Composite
啟用此系統時,可解碼復合代碼(具有二維分量的一維代碼)。可與 EAN.UCC 一起使用的一維代碼包括 GS1 DataBar 和 Code 128。
(9)POSTNET
郵政數字編碼技術 (POSTNET) 條碼由美國郵政局發明,用來編碼 ZIP 代碼信息。采用 POSTNET 代碼系統的條碼使用 5 個長短不同的條碼組合來編碼每個數字字符。POSTNET 條碼可包含 5 位數 ZIP 代碼、5 位數 ZIP + 4 代碼或 11 位數交貨地點代碼。此符號始終包含校驗和字符。
(10)PLANET
PLANET 條碼是 POSTNET 條碼的逆反版本,在 POSTNET 代碼系統使用長條碼的地方使用短條碼,在 POSTNET 代碼系統使用短條碼的地方使用長條碼。美國郵政局使用 PLANET 條碼來跟蹤郵件。一個 PLANET 條碼最多可有 12 位。
(11)4-State Postal
4-State 是由澳大利亞郵政局采用的字母數字代碼系統。采用 4-State 代碼系統的條碼使用 4 個不同類的條碼來編碼每個字符,其中每個條碼都有不同的名字和值。4-State 條碼可采用以下三個不同結構中的一個來生成:37 個條碼(標準)、52 個條碼或 67 個條碼。Barcode 工具支持 4-State 代碼系統的 Australian、JapanPost、UPU 和 USPS 版本。
1.3_二維碼
(1)二維碼(2-Dimensional Bar Code),是用某種特定的幾何圖形按一定規律在平面(二維方向上)分布的黑白相間的圖形記錄數據符號信息的。它是指在一維條碼的基礎上擴展出另一維具有可讀性的條碼,使用黑白矩形圖案表示二進制數據,被設備掃描后可獲取其中所包含的信息。一維條碼的寬度記載著數據,而其長度沒有記載數據。二維條碼的長度、寬度均記載著數據。二維條碼有一維條碼沒有的“定位點”和“容錯機制”。容錯機制在即使沒有辨識到全部的條碼、或是說條碼有污損時,也可以正確地還原條碼上的信息。
(2)類別:二維條碼的種類很多,不同的機構開發出的二維條碼具有不同的結構以及編寫、讀取方法。常見的二維碼有:PDF417碼、QR碼、漢信碼、顏色條碼、quick mark code、data matrix
????????????????????????????????
(3)定位標記:二維條碼通常有特定的定位標記(如QR碼為三個大的定位點),通過定位標記使讀碼機正確辨識進行解讀,所以二維條碼不管是從何種方向讀取都可以被辨識。
(4)特性:二維條碼比一維條碼記載數據量更多。而且可以記載更復雜的數據,比如圖片鏈接、網絡鏈接等。
1.4_代碼
(1)驗證碼:C#使用GDI+實現生成驗證碼_C#教程_腳本之家
(2)條形碼:BarCode條形碼基于C# GDI+ 的實現方法詳解_C#教程_腳本之家;
C# GDI+實現BarCode條形碼 - soliang - 博客園
2_WinForm UI控件庫
2.1_Sunny UI
(1)SunnyUI 是一款基于 .NET 的 C# WinForm 開源控件庫,它不僅提供了豐富的界面控件,還包含了工具類庫、擴展類庫以及多頁面開發框架,致力于幫助開發者快速構建現代化、美觀且功能強大的 Windows 桌面應用程序。
(2)核心表
特性維度 | 說明 |
---|---|
開發基礎 | 基于 .NET Framework 4.0+、.NET Core 3.1、.NET 5、.NET 6, 7, 8 等 |
界面風格 | 扁平化(參考 Element、DotNetBar 設計風格) |
開源協議 | GPL-3.0 |
控件數量 | 提供超過 70 個 常用控件 |
主題支持 | 內置 11 種 Element 風格主題、3 種 DotNetBar 主題以及其他主題,支持自定義 |
國際化 | 支持多語言(默認中文) |
觸屏優化 | 專為觸摸操作進行了優化 |
(3)主要特點
-
豐富的控件庫:提供了大量重寫的 WinForm 控件,如按鈕、文本框、下拉框、數據表格、樹形視圖、選項卡、導航欄等,還有工業儀表控件(如儀表盤、溫度計等)和數據圖表控件(如折線圖、餅圖、柱狀圖等),滿足各種業務場景。
-
強大的主題與樣式系統:內置了多達11種以上的 Element 風格主題以及其他主題,你可以通過
UIStyleManager
組件輕松切換全局主題或為單個控件設置樣式,并且支持自定義主題顏色。 -
多頁面應用開發框架:提供了一套類似 Web 開發中單頁應用(SPA)的多頁面框架,可以非常方便地在一個窗體內容區域內動態加載和切換多個頁面(UIPage),簡化復雜應用的開發。
-
國際化與本地化支持:控件默認使用中文,同時提供了多語言接口(如
UILocalize
類),可以方便地將界面切換為英文等其他語言,適合開發面向國際市場的應用。 -
字體圖標集成:集成了 FontAwesome 和 ElegantIcons 兩套流行的字體圖標庫,開發者可以直接在控件中使用這些矢量圖標,無需到處尋找圖片資源,使得界面更加精簡和專業。
-
性能優化:控件庫在開發過程中注重性能,力求在提供豐富視覺效果的同時保證應用的流暢運行。
(4)使用:
-
通過 NuGet 安裝(推薦)在 NuGet 包管理器中搜索 "SunnyUI" 并安裝。
-
手動引用 DLL:從項目的發布頁面(如 Gitee 或 GitHub)下載編譯好的 DLL 文件,然后在你的項目中添加引用。(注意引用的時候VS2022有bug,會卡死,需要不斷點擊)
-
引用源碼項目:如果你希望深入了解或進行自定義修改,可以克隆或下載源碼,然后將其作為項目直接添加到你的解決方案中引用。(已下載:D:\上位機\擴展\SunnyUI)
(5)官方資源地址:
-
Gitee(碼云)主頁(主要倉庫):https://gitee.com/yhuse/SunnyUI
-
GitHub 主頁:GitHub - yhuse/SunnyUI: SunnyUI.NET 是基于.NET Framework 4.0+、.NET6、.NET8、.NET9 框架的 C# WinForm UI、開源控件庫、工具類庫、擴展類庫、多頁面開發框架。
-
官方文檔和Wiki:[文檔預覽 - Gitee.com] (詳細的安裝指南、控件使用說明和示例)
2.2_HZHControls
(1)HZHControls 是一個基于 .NET Framework 4.0(也支持更高版本)的 C# WinForms 開源控件庫。它致力于提供美觀、現代化且觸屏友好的用戶界面組件,讓你能快速構建出具有 Web 風格和扁平化設計感的桌面應用程序。
(2)核心表
特性維度 | 說明 |
---|---|
開發基礎 | 基于 .NET Framework 4.0+,完全原生開發,不依賴第三方控件 |
界面風格 | 扁平化、類Web風格,追求美觀與現代感 |
觸屏支持 | 優化了對觸屏的操作支持,適合在觸摸設備上使用 |
授權方式 | 個人學習免費,商業應用需授權(價格相對較低) |
開源協議 | 基于 GPL-3.0 協議 |
技術支持 | 提供幫助文檔、技術支持,有官方交流社區(如QQ群) |
(3)主要特點
-
豐富多樣的控件集合:提供了200多個控件、窗體和組件,涵蓋了常規開發中的大多數場景(如各種按鈕、表單控件、導航、列表、表格等),甚至還包含了許多工業風格的控件(如儀表盤、管道、閥門、警燈、傳送帶等),這對于開發工業自動化、MES系統等尤為有用。
-
美觀的界面與圖表功能:控件UI參考了Web設計,扁平化風格,視覺效果出色。同時內置了多種數據圖表(如柱狀圖、餅圖、折線圖、雷達圖等),滿足數據可視化需求。
-
開源與靈活性:控件庫完全開源,你可以根據項目需要自由修改和擴展控件。
-
良好的觸屏體驗:對觸摸操作進行了特別優化,使得在觸摸屏設備上也能有流暢自然的操作體驗。
(4)使用
-
通過 NuGet 安裝(較方便):在 NuGet 包管理器中搜索
HZHControls
并安裝。這是比較推薦的方式,方便管理和更新。 -
引用源碼項目:下載源代碼后,將
HZH_Controls.csproj
項目文件直接添加到你的解決方案中,然后在你的項目中添加對該項目引用。這種方式方便你閱讀和調試源碼。(D:\上位機\擴展\hzh-controls) -
引用編譯后的 DLL:先編譯控件庫源碼生成 DLL 文件,然后在你的項目中直接添加對該 DLL 文件的引用。
(5)官方地址
-
Gitee 碼云源碼地址: https://gitee.com/kwwwvagaa/net_winform_custom_control
-
官方網址: HZHControls官網|完全開源|.net framework4.0|類Layui控件|自定義控件|技術交流|WinFrom控件庫|鄭州多葉草科技有限公司 (提供說明文檔及源碼下載)