Rust पर QR कोड जनरेटर: qr_code लाइब्रेरी

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

Rust पर QR कोड जनरेटर: qr_code लाइब्रेरी



QR कोड आधुनिक वेब और मोबाइल एप्लिकेशन का एक अभिन्न अंग बन गए हैं। इनका उपयोग लिंक, संपर्क, भुगतान डेटा और अन्य जानकारी के त्वरित आदान-प्रदान के लिए किया जाता है। यदि आप Rust में डेवलप कर रहे हैं और अपने प्रोजेक्ट में QR कोड जनरेशन जोड़ना चाहते हैं, तो qr_code लाइब्रेरी सबसे अच्छे समाधानों में से एक है। इस लेख में, हम विस्तार से समझेंगे कि Rust कोड में सीधे QR कोड बनाने के लिए इस लाइब्रेरी को कैसे स्थापित करें, कॉन्फ़िगर करें और उपयोग करें।



qr_code लाइब्रेरी क्या है?

qr_code बिना किसी बाहरी निर्भरता के QR कोड (संस्करण 2) उत्पन्न करने के लिए एक शुद्ध Rust लाइब्रेरी है। यह स्ट्रिंग डेटा से QR कोड बनाने, त्रुटि सुधार स्तर, मॉड्यूल आकार और रंग को कॉन्फ़िगर करने की अनुमति देती है। लाइब्रेरी SVG, PNG (image के माध्यम से) और टर्मिनल के लिए ASCII ग्राफिक्स के रूप में आउटपुट का समर्थन करती है। मुख्य लाभ:

  • उच्च प्रदर्शन (Rust बिना GC)।
  • न्यूनतम मेमोरी खपत।
  • सभी चार त्रुटि सुधार स्तरों (L, M, Q, H) का समर्थन।
  • QR कोड की उपस्थिति का लचीला कॉन्फ़िगरेशन।


स्थापना

अपने Cargo.toml में निर्भरता जोड़ें:

[dependencies]qr_code = "0.2.0"

यदि आपको PNG में आउटपुट चाहिए, तो अतिरिक्त रूप से image क्रेट स्थापित करें:

image = "0.24"

उसके बाद, लाइब्रेरी को डाउनलोड और कंपाइल करने के लिए cargo build चलाएँ।



मूल उदाहरण: SVG में QR कोड जनरेशन

QR कोड प्राप्त करने का सबसे सरल तरीका इसे वेक्टर SVG प्रारूप में सहेजना है। नीचे एक न्यूनतम कार्यशील उदाहरण दिया गया है:

use qr_code::QrCode;

fn main() { // स्ट्रिंग से QR कोड बनाएं let code = QrCode::new("https://pythonlib.ru").unwrap(); // 8 पिक्सेल मॉड्यूल आकार के साथ SVG स्ट्रिंग जनरेट करें let svg = code.to_svg().with_width(8).to_string(); // फ़ाइल में सहेजें std::fs::write("qrcode.svg", svg).unwrap(); println!("QR कोड qrcode.svg में सहेजा गया");}

चलाने के बाद, आपको qrcode.svg फ़ाइल मिलेगी, जिसे ब्राउज़र में खोला जा सकता है या HTML पेज में डाला जा सकता है।



त्रुटि सुधार स्तर का कॉन्फ़िगरेशन

सुधार स्तर यह निर्धारित करता है कि QR कोड कितना क्षतिग्रस्त हो सकता है और फिर भी पढ़ने योग्य रह सकता है। लाइब्रेरी चार स्तरों का समर्थन करती है:

  • ErrorCorrection::Low — 7% डेटा पुनर्प्राप्त किया जा सकता है।
  • ErrorCorrection::Medium — 15%।
  • ErrorCorrection::Quartile — 25%।
  • ErrorCorrection::High — 30%।

उपयोग का उदाहरण:

use qr_code::{QrCode, ErrorCorrection};

let code = QrCode::with_error_correction( "गुप्त कोड", ErrorCorrection::High).unwrap();

let svg = code.to_svg().with_width(10).to_string();std::fs::write("secret_qr.svg", svg).unwrap();


PNG में QR कोड जनरेशन (रास्टर इमेज)

PNG में आउटपुट के लिए image क्रेट की आवश्यकता होगी। पहले इसे Cargo.toml में जोड़ें, फिर निम्न कोड का उपयोग करें:

use qr_code::QrCode;use image::{Luma, ImageBuffer};

fn main() { let code = QrCode::new("Rust is awesome!").unwrap(); // इमेज बनाएं: प्रत्येक मॉड्यूल = 10 पिक्सेल let size = code.width() * 10; let mut img = ImageBuffer::new(size as u32, size as u32); // सफेद पृष्ठभूमि से भरें for pixel in img.pixels_mut() { *pixel = Luma([255u8]); } // काले मॉड्यूल बनाएं for y in 0..code.width() { for x in 0..code.width() { if code[(x, y)] { let px = x as u32 * 10; let py = y as u32 * 10; for dy in 0..10 { for dx in 0..10 { img.

अनुशंसाएँ