QR कोड रीडर क्या है?
QR कोड एक द्वि-आयामी मैट्रिक्स बारकोड है जिसे ISO/IEC 18004 द्वारा परिभाषित किया गया है। यह टेक्स्ट, URL, संपर्क कार्ड, Wi-Fi क्रेडेंशियल और अन्य छोटे पेलोड को काले-सफेद वर्गाकार मॉड्यूल की ग्रिड के रूप में एन्कोड करता है, साथ में Reed-Solomon त्रुटि-सुधार डेटा ताकि प्रतीक आंशिक क्षति या लोगो ओवरले के बाद भी डीकोड हो सके। एक QR कोड रीडर विपरीत काम करता है: यह QR प्रतीक की इमेज लेता है और मूल पेलोड स्ट्रिंग पुनः प्राप्त करता है। यह रीडर ओपन-सोर्स jsQR लाइब्रेरी (लगभग 130 KB, MIT-लाइसेंस) का उपयोग करके डीकोड पाइपलाइन सीधे आपके ब्राउज़र में चलाता है। आप जो इमेज छोड़ते, पेस्ट करते या कैमरे से स्कैन करते हैं वह टैब से बाहर नहीं जाती।
QR डीकोडिंग कैसे काम करती है?
डीकोडिंग पूरी तरह आपकी मशीन पर चलती है। पेलोड टेक्स्ट वापस करने से पहले प्रत्येक इमेज एक निश्चित पाइपलाइन से गुज़रती है:
- इमेज फ़ाइल (PNG, JPG, WebP, या कैमरा फ्रेम) एक ऑफस्क्रीन HTML
<canvas>पर ड्रॉ की जाती है। Canvas API कच्चे पिक्सेल डेटा को RGBA बाइट ऐरे के रूप में लौटाता है। - jsQR लाइब्रेरी पिक्सेल ऐरे को ग्रेस्केल बिटमैप में बदलती है और QR प्रतीक के कोनों में तीन विशिष्ट फाइंडर-पैटर्न वर्गों की खोज करती है।
- फाइंडर पैटर्न मिलने के बाद, डीकोडर परिप्रेक्ष्य रूपांतरण की गणना करता है और पूरी मॉड्यूल ग्रिड निकालता है, प्रत्येक सेल को बाइनरी 0 या 1 के रूप में पढ़ता है।
- मॉड्यूल ग्रिड को QR स्पेक के अनुसार पार्स किया जाता है: फॉर्मेट और वर्शन जानकारी पहले पढ़ी जाती है, फिर डेटा मॉड्यूल डी-इंटरलीव किए जाते हैं और Reed-Solomon त्रुटि सुधार लागू होता है।
- सही किए गए डेटा कोडवर्ड सेगमेंट मोड (संख्यात्मक, अल्फ़ान्यूमेरिक, बाइट, या कांजी) के अनुसार डीकोड किए जाते हैं, मूल पेलोड स्ट्रिंग प्राप्त होती है।
- यह टूल फिर पेलोड को नियमित अभिव्यक्तियों के एक छोटे सेट से जाँचता है ताकि सामग्री प्रकार (URL, Wi-Fi क्रेडेंशियल, vCard आदि) पहचान सके और उचित एक्शन बटन के साथ परिणाम दिखाए।
ब्राउज़र-आधारित QR रीडर क्यों उपयोग करें?
- इमेज बाइट्स आपके डिवाइस से बाहर नहीं जाते। कोई QR पेस्ट करें जो Wi-Fi पासवर्ड, आंतरिक स्टेजिंग URL, या किसी के व्यक्तिगत फ़ोन नंबर वाला vCard छुपाता है, और वह सामग्री आपके लैपटॉप पर रहती है। अन्य QR रीडर रिमोट सर्वर पर डीकोड चलाते हैं और आपसे पहले इमेज अपलोड करवाते हैं — यह नहीं करता।
- पेज लोड होने के बाद, डीकोडिंग ऑफलाइन काम करती है। jsQR लाइब्रेरी आपके टैब में है। आप Wi-Fi डिस्कनेक्ट कर सकते हैं, पेज पर QR इमेज छोड़ सकते हैं, और फिर भी पेलोड वापस पा सकते हैं।
- यदि आपके डेस्कटॉप या लैपटॉप पर वेबकैम है, तो आप किसी प्रिंटेड QR कोड पर इसे इंगित करके ऐप इंस्टॉल किए बिना या फ़ोन अनलॉक किए बिना पढ़ सकते हैं। कैमरा स्ट्रीम ब्राउज़र में रहती है और कोड डीकोड होते ही रुक जाती है।
- रीडर URL, Wi-Fi जॉइन स्ट्रिंग, vCard, MeCard, mailto, SMS और geo पेलोड पहचानता है और एक मिलान एक्शन बटन दिखाता है। URL खोलें, Wi-Fi पासवर्ड कॉपी करें, संपर्क कार्ड सेव करें — जो भी QR में है।
QR कोड रीडर के सामान्य उपयोग
जब भी आपको फ़ोन को उसकी तरफ इंगित किए बिना QR कोड में वास्तव में क्या है यह देखना हो:
- आपने जो कोड अभी जनरेट किए उन्हें डीबग करना। QR पेस्ट करें जो आपके ऐप ने बनाया और पुष्टि करें कि एन्कोडेड URL या पेलोड वही है जो आप चाहते थे, प्रिंट, पैकेजिंग या पोस्टर पर भेजने से पहले।
- Wi-Fi क्रेडेंशियल पुनः प्राप्त करना। राउटर कॉन्फिग पेज, होटल वेलकम कार्ड या किसी फोटो के Wi-Fi QR को स्कैन करें और रीडर SSID, सुरक्षा प्रकार और पासफ्रेज़ प्लेन टेक्स्ट में लौटाता है जिसे आप किसी अन्य डिवाइस में कॉपी कर सकते हैं।
- ऑडिटिंग और एक्सेसिबिलिटी। स्कैन किए दस्तावेज़ों, उत्पाद लेबल, कॉन्फ्रेंस बैज या सोशल पोस्ट के स्क्रीनशॉट पर QR कोड डीकोड करें उनकी सामग्री स्प्रेडशीट, अनुपालन लॉग या सहायक सॉफ़्टवेयर में निकालने के लिए।
वास्तविक QR कोड डीकोड कैसा दिखता है?
कॉफी शॉप की खिड़की पर छपा Wi-Fi QR कोड लें। प्रतीक के पीछे, कच्चा पेलोड WIFI: URI स्कीम का पालन करता है: WIFI:S:CafeGuest;T:WPA;P:espresso2026;H:false;;। प्रतीक की फोटो लें, इमेज को ऊपर अपलोड ज़ोन में छोड़ें, और पाइपलाइन शुरू होती है: canvas पिक्सेल पढ़ता है, jsQR तीन कोने के फाइंडर पैटर्न ढूंढता है, परिप्रेक्ष्य रूपांतरण ग्रिड सीधी करता है, Reed-Solomon कोई चमक या संपीड़न क्षति ठीक करता है, और बाइट-मोड सेगमेंट URI स्ट्रिंग देता है। रीडर WIFI: उपसर्ग सूँघता है और प्रकार Wi-Fi लेबल करता है, नेटवर्क नाम CafeGuest, सुरक्षा प्रकार WPA और पासफ्रेज़ espresso2026 पार्स करता है। कॉपी करें बटन पासवर्ड आपके क्लिपबोर्ड पर डालता है। किसी URL के लिए, वही पाइपलाइन URL प्रकार बैज और एक खोलें बटन लौटाती है।
यह QR कोड रीडर एक काम के लिए बना है: आपको दिखाएँ कि QR कोड में क्या एन्कोड है, आपके ब्राउज़र में, बिना किसी सर्वर के। इमेज छोड़ें, क्लिपबोर्ड से पेस्ट करें, या वेबकैम चलाएँ, और डीकोड की गई सामग्री एक सेकंड से कम में स्क्रीन पर आ जाती है। इमेज बाइट्स अपलोड नहीं होते। कैमरा फ्रेम रिकॉर्ड नहीं होते। डीकोड किया पेलोड किसी के लॉग से नहीं गुज़रता। इसे QR Code Generator के साथ जोड़ें जब आपको यह पुष्टि करनी हो कि आपने जो एन्कोड किया वही कोई और देखेगा।
क्या इमेज सर्वर पर अपलोड होती है?
नहीं। इमेज इन-मेमोरी HTML canvas पर ड्रॉ की जाती है और आपके टैब में चलने वाले क्लाइंट-साइड JavaScript द्वारा पूरी तरह डीकोड होती है। आपकी इमेज का कोई पिक्सेल कभी किसी सर्वर को नहीं भेजा जाता, लॉग नहीं किया जाता या स्टोर नहीं होता। आप DevTools खोलकर और Network पैनल देखते हुए इमेज छोड़कर इसे स्वयं सत्यापित कर सकते हैं: कोई XHR नहीं, कोई fetch नहीं, कोई analytics beacon फ़ाइल सामग्री से नहीं जुड़ी।
कैमरा स्कैनिंग कैसे काम करती है?
जब आप कैमरा मोड सक्षम करते हैं, तो ब्राउज़र मानक getUserMedia API के माध्यम से आपके डिवाइस कैमरे तक पहुँच की अनुमति माँगता है। वीडियो फ्रेम 640×480 रेजोल्यूशन तक ऑफस्क्रीन canvas में कैप्चर किए जाते हैं और jsQR को डीकोड के लिए दिए जाते हैं। अगला फ्रेम आते ही प्रत्येक फ्रेम हटा दिया जाता है, और पहली सफल डीकोड पर कैमरा स्ट्रीम बंद हो जाती है। कोई फ्रेम रिकॉर्ड नहीं होता, कोई फ्रेम प्रसारित नहीं होता, और अनुमति प्रॉम्प्ट केवल तभी आता है जब आप टॉगल टिक करते हैं — पेज लोड पर नहीं।
कुछ QR सामग्री स्वतः Wi-Fi या vCard क्यों पहचानी जाती है?
Wi-Fi क्रेडेंशियल के लिए QR पेलोड WIFI:S:ssid;T:type;P:password;; फॉर्मेट का पालन करते हैं, और vCard BEGIN:VCARD से शुरू होते हैं। यह रीडर उन पैटर्न के साथ-साथ अन्य मानक उपसर्गों (mailto:, geo:, smsto:, MECARD:, https://) को पहचानता है और सामग्री प्रकार स्वतः लेबल करता है ताकि एक्शन बटन मेल खाए।
मेरा QR कोड क्यों स्कैन नहीं हुआ?
सामान्य कारण: इमेज बहुत छोटी या कम रेजोल्यूशन (~100×100 px न्यूनतम है, 300×300+ विश्वसनीय रूप से स्कैन होता है), प्रतीक में भारी क्षति है या लोगो ने पर्याप्त त्रुटि सुधार के बिना आंशिक रूप से ढका है, क्विएट ज़ोन (मॉड्यूल के चारों ओर खाली बॉर्डर) गायब या काटा गया है, या गहरे और हल्के मॉड्यूल के बीच कंट्रास्ट बहुत कम है। कैमरा मोड के लिए, रोशनी बेहतर करें या कोड को लेंस के करीब लाएँ।