2012-08-29 27 views
5

मेरे पास 2 डी बारकोड स्कैनर है (हनीवेल क्सीनन 1 9 00)। के रूप में स्कैनर कीबोर्ड की घटनाओं emulates और सादा पाठ भेजताबारकोड स्कैनर से लौटाए गए बाइनरी डेटा को कैसे संभालें?

स्कैनिंग -1 डी बारकोड, आसान है।

लेकिन जब मैं PDF417 format 2 डी बारकोड को स्कैन, स्कैनर बाइनरी डेटा भेजता है। मैं इस डेटा को कैप्चर और डीकोड कैसे कर सकता हूं? कुछ प्रतीकों गैर-प्रिंट करने योग्य हैं, इसलिए वेब पेज पर किसी फ़ॉर्म में स्कैनिंग काम नहीं करेगी।

+3

शायद नमूना प्रतिक्रिया पोस्ट करें? – BryanH

+1

आपके पास अपनी पोस्ट में आपका जवाब है, बस लिंक को और अधिक बारीकी से देखें (विकी में आईएसओ) –

+0

विकिपीडिया लेख के अनुसार, बारकोड में वास्तविक बाइनरी डेटा हो सकता है, इसलिए यह समझ में आ जाएगा कि यह आउटपुट है, है ना? क्या होगा यदि आप केवल ASCII डेटा के साथ अपना 2 डी बारकोड उत्पन्न करते हैं; क्या आपको स्कैनर से टेक्स्ट वापस मिलता है? – BryanH

उत्तर

3

इस प्रश्न के लिए मेरे समाधान COM बंदरगाह का उपयोग कर रहा है।

मैं स्कैनर कॉन्फ़िगर करते हैं, तो यह डेटा नहीं भेजता कुंजीपटल घटनाओं के रूप में है, लेकिन आभासी COM बंदरगाह में। फिर मेरे पास जावा-एप्लेट है, जो इस पोर्ट को सुनता है (RXTX का उपयोग करके)। फिर COM-port खाली नहीं है, मैं डेटा प्राप्त कर सकता हूं और इसे पार्स कर सकता हूं।

0

आप इस जावा टैग किया है जावास्क्रिप्ट के साथ ही। हालांकि आपने वास्तव में हमें आपके आवेदन का कोई विवरण नहीं दिया है। फिर भी, जावास्क्रिप्ट में बाइनरी डेटा के परिवहन से निपटने, बेस 64 प्रोटोकॉल का उपयोग करके किया जा सकता है। दो विधियों का उपयोग करें btoa() और atob()

function toBase64() { 
      return window.btoa(data); 
     } 
function fromBase64 (strBase64){ 
      data = window.atob(strBase64); 
     } 

मैं तुम्हारे लिए अवधारणा लगता है, हालांकि, (और मैं सिर्फ अनुमान लगा रहा हूँ जब से तुम नहीं बताया कि क्या आप किसी भी विस्तार से कर रहे हैं) के लिए यह परिवहन से पहले, base64एन्कोड डेटा होगा जावास्क्रिप्ट/एचटीएमएल/वेब अनुप्रयोग। आप जावा का मानकर ऐसा कर रहे होंगे। एक बार जब आप अपने वेब एप्लिकेशन में बेस 64 एन्कोडेड डेटा भेजते हैं, तो आप इसे आसानी से सौदा कर सकते हैं।

+0

यह सुरुचिपूर्ण और सरल-से-लागू समाधान है। लेकिन मुझे अपने स्कैनर के लिए BASE64 प्रारूप का उपयोग करने के लिए कॉन्फ़िगरेशन विकल्प नहीं मिल रहा है। – griZZZly8

संबंधित मुद्दे